Project A is a website based on JIRA, in which a team of users, each on with his own role, like developers, managers and testers work together to make software projects.
This project is a portfolio project, with the purpose of putting into practice the learning of building apis using graphql and clients using react, simulating the maximum that can be required of a developer using these technologies.
Node, Express, Apollo Server, GraphQL, PostgreSQL, MikroORM as ORM, graphql-upload and JsonWebToken. (TypeScript)
NextJs, Chakra UI, Urql, React Icons, React DnD, Formik, React Select and GraphQL Code Generator. (TypeScript)
- Main Stack Setup (Ben Awad Youtube)
- React Drag and Drop Tutorial (Besides Docs)
- Urql React
- File Upload with Urql
You will need postgres running and with a database name attached to your .env file name
ACCESS_TOKEN_SECRET=yourSecretRefresh
REFRESH_TOKEN_SECRET=yourSecretAccess
DEV_FRONT_URL=http://localhost:3000
DB_NAME=your_database_project_name
DB_USER=postgres
DB_PASSWORD=postgres
NODE_ENV=development
this ".env" file must be placed on : (project_a/server/)
yarn install (server/ and web/web)
After this, use the ORM to generate the relations needed: (/server)
npx mikro-orm migration:up
After install the dependencies and .env correctly placed, the command above should create all the relations, make sure to log in into your postgres user and see the new relations use: "\dt", also check the terminal output. Run the watch command to keeping recompiling the typescript, and in another terminal, dev command to execute the index.js generated in dist/ folder
/server :
yarn watch and yarn dev
After this your playground should be running at localhost:4001/graphql.
/web/web/
yarn dev
localhost:3000