Nem per feina is an open source project promoted by GeeksCat association for Hactoberfest 2020 event.
Show your support by π the project!!
The objective of this hackathon is to launch a job portal website where tech community can find curated job opportunities from local companies.
We forked the open source project django-job-portal (See demo 1, demo 2) and use it as a baseline.
To deploy to a k8s cluster see the k8s manifests
Nem per feina is a collaborative effort where everybody is more than welcome to contribute, no experience is required!
Have a look at CONTRIBUTING.md file that describes the process to submit a contribution, and come say hi ππ to GeeksCat slack where most contributors hang out.
- Backend: A django web application on top of a PostgreSQL database. It contains all business logic, data model (ORM) and a django-rest-framework REST API to power the frontend/UI
- Frontend: A frontoffice using vue.js/SASS using BEMIT Architecture and Nuxt, and a backoffice using React/styled-components and Next
- Arch-ci: Dockerized dev environment, CI/CD workflow and Kubernettes cluster for production and more!
If you wish to use a dockerized development environment, you can easily do so by following these steps:
-
Add
.env
file:cp .env.dev.sample .env
-
Start local development environment:
make start
Or, if you wish to run in detached mode:
make serve
-
Execute tests:
make test
-
To see all available options:
make help
Once the environment is up and running, you can modify the project files and the Django auto-reload will pick up your changes in the container.
To stop the dockerized development environment use:
CTRL+C
or make stop
if you run in detached mode.
The app container runs database migrations at every startup, so simply restart the app server with
make restart c=app
If during development you need to change the requirements.txt
file you'll also have to rebuild the container:
-
Build images again with
make build
ormake build c=app
// orc=test
-
Stop and remove your environment with
make restart
. Even though continers are removed, your database volume will be preserved.
If you want to recreate the database:
-
Delete everything including volumes with
make purge
-
Restart everything with
make up
(ormake server
for detached mode)
-
Create a virtual environment
virtualenv venv
Or
python3.8 -m venv venv
-
Activate it
source venv/bin/activate
-
Install the packages in the virtual env:
pip install -r requirements.txt
-
Add
.env
file.cp .env.dev.sample .env
1.With the venv activate it, execute:
`python manage.py collectstatic`
Note : Collect static is not necessary when debug is True (in dev mode)
-
Create initial database:
python manage.py migrate
-
Load demo data (optional):
python manage.py loaddata demo
-
Run server:
python manage.py runserver 0.0.0.0:8000
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!