- Build on top of NextJS with React
- TypeScript & ES 2022+
- Based on components brought by MUI, Monaco Editor and React Markdown
- Translation with i18n-js
- Monolith application
- Run code in Kubernetes with jobs
- Include charts deployment with Helm
To clone and run this application, you'll need Git and Node.js (which comes with npm), installed on your computer. From your command line:
# Clone this repository
$ git clone [email protected]:do-polycode/frontend.git
# Go into the repository
$ cd frontend
# Create a .env file from .env.example
$ cp .env.example .env
# Install dependencies
$ npm install
# Run the app
$ npm start
WARNING Environment variables beginning with
NEXT_PUBLIC_
are used at the build time. Do not forget to define them before building the application. They aren't required at runtime.
Note If you're using Linux Bash for Windows, see this guide or use
node
from the command prompt.
Run npm run dev
for a dev server. Navigate to http://localhost:3000/ (or http://localhost:3001/ if another app is already running on this port). The app will automatically reload if you change any of the source files.
Run npm run build
to build the project. The build artifacts will be stored in the .next/
directory.
Run npm run test
to execute the unit tests via Jest.
In order to help you not commit unformatted / unlinted code, we use git hooks that you can install with npm run setup
.
These hooks are setup with husky.
Furthermore, commit-lint
is used to ensure you respects conventional commits.
To contribute to this repository, there are a few guidelines :
- Create an issue with a descriptive title.
- Create an associated Merge Request.
- Perform modifications on your branch
- When you're done, ensure you check all the Mark of the DoD
- Great job, you're MR is ready to be reviewed 🚀
This software uses the following open source packages:
polycode-backend - PolyCode API
polycode-ops - Operations management system for PolyCode