NOTE: Some scripts of this project have been written based on Unix commands (e.g, cp, rm), so if you are running this project on a Windows-based system, you may face difficulties with the
yarn copy-envs
command. In this case, you can manually copy the.env.example
files and rename them to.env
├── apps/
| └── server
| └── web
| └── next #wip
├── packages/
| └── babel
| └── types
| └── ui
└── ...
- Linter (Eslint)
- Prettier
- Commitlint
- Editorconfig
- Lint staged
- Pre-commit
- CI/CD (Github Actions)
- Dockerfile
- TypeScript
- Koa
- GraphQL
- Relay
- MongoDB
- Mongoose
- Jest
- Linter (Eslint)
- Prettier
- Entria helpers
- Webpack + Babel
- TypeScript
- ReactTS
- Vite
- Semantic UI
- Tailwind
- Linter (Eslint)
- Prettier
- Routing (react-router-dom)
- Jest + Testing Library
Clone the repo
git clone https://github.com/nogw/violetit.git
### remember to start docker before executing the command!
docker run -d -p 27017:27017 --name CONTAINER_NAME -d mongo:latest
yarn copy-envs
MONGO_URI
can be set as mongodb://127.0.0.1:27017/violetit
if you run in localhost
### apps/server/.env
PORT=4000
JWT_KEY=
MONGO_URI=
VITE_GRAPHQL_URL
can be set as http://localhost:4000/graphql
if you run in localhost
### apps/web/.env
VITE_GRAPHQL_URL=
### apps/web/relay.config.js
schema: '../server/graphql/schema.graphql',
yarn
To begin, generate the schema.graphql
file:
yarn workspace @violetit/server schema:generate
Start the server in development mode:
yarn workspace @violetit/server start:dev
To begin, generate the artifacts using the Relay Compiler:
yarn workspace @violetit/web relay
Start the web app in development mode:
yarn workspace @violetit/web start:dev
If you have completed the necessary setup for the required packages, you can run them concurrently with a single command:
yarn dev:all
Contributions are welcome from everyone! Here's how you can get started:
If you encounter any bugs or have any feature requests, please create an issue with a description of the problem
Pull requests from anyone are appreciated and can help make this project better! To get started, follow these steps:
- Fork the repository
- Clone the repository to your local machine
- Create a new branch for your changes and switch to it (
git checkout -b feature/featureName
) - Make your changes and commit them (
git commit -m 'Add some featureName'
) - Push your changes to your fork (
git push origin feature/featureName
) - Create a pull request in the original repository
- Twitter - @nogchou
- Discord - noge#4932