2020-01-12 01:59:08 +01:00
2019-12-03 20:39:54 +01:00
2020-01-12 01:59:08 +01:00
2020-01-12 01:59:08 +01:00
2019-12-03 15:38:53 +01:00
2020-01-12 01:59:08 +01:00

A simplified Jira clone built with React and Node

Auto formatted with Prettier, tested with Cypress 🎗

Visit the live app | View client | View API

Tech logos

App screenshot

Setting up development environment 🛠

  • Install postgreSQL if you don't have it already and create a database named jira_development.
  • git clone https://github.com/oldboyxx/jira_clone.git
  • Create an empty .env file in /api, copy /api/.env.example contents into it, and fill in your database username and password.
  • npm run install-dependencies
  • cd api && npm start
  • cd client && npm start in another terminal tab
  • App should now be running on http://localhost:8080/

Running cypress end-to-end tests 🚥

  • Set up development environment
  • Create a database named jira_test and start the api with cd api && npm run start:test
  • cd client && npm run test:cypress

What's missing?

There are features missing from this showcase API which should exist in a real product:

Migrations 🗄

We're currently using TypeORM's synchronize feature which auto creates the database schema on every application launch. It's fine to do this in a showcase product or during early development while the product is not used by anyone, but before going live with a real product, we should introduce migrations.

Proper authentication system 🔐

We currently auto create an auth token and seed a project with issues and users for anyone who visits the API without valid credentials. In a real product we'd want to implement a proper email and password authentication system.

Unit/Integration tests 🧪

Both Client and API are currently tested by through end-to-end Cypress tests. That's good enough for a relatively simple application such as this, even if it was a real product. However, as the app grows in complexity, it might be wise to start writing additional unit/integration tests.

Author: Ivor Reic ✍️


Visit the live app | View client | View API

Description
No description provided
Readme MIT 2 MiB
Languages
JavaScript 84.6%
TypeScript 14.6%
CSS 0.5%