API utilizada para centralizar recursos para aprendizagem de idiomas, specifically AI and Anki.
License: MIT
Moved to settings.
- Ao baixar a aplicação, será necessário rodar os comandos:
$ python manage.py migrate`
$ python manage.py load_nationalities`
$ python manage.py load_languages`
$ python manage.py load_superuser`
Esses comandos, respectivamente, aplicam as migrações no banco de dados; carregam dados sobre nacionalidades, idiomas e cria um superusuário padrão para o administrador. A senha e e-mail dele podem ser encontrados no arquivo load_superuser.py
. Também será necessário criar um arquivo .env
utilizando o arquivo .env-EXAMPLE
como exemplo.
-
Para criar um novo superusuário, basta utilizar este comando:
$ python manage.py createsuperuser
Esta aplicação utiliza o celery como um distributed task queue, além de conter também tarefas periodicas pré-configuradas e também aquelas que serão configuradas pelo administrador para realização do backup do banco de dados. Dessa forma, é necessário rodar tanto o celery worker, quanto o celery_beat.
Para rodar o projeto localmente sem utilizar o Docker, utilize estes comandos:
$ python manage.py runserver
$ celery -A config.celery_app worker --loglevel=INFO
$ celery -A config.celery_app beat --loglevel=INFO
Pronto!
Para rodar com o Docker, crie, na pasta raíz do projeto, uma pasta .envs
e, dentro dela, uma pasta .local
. Dentro da última pasta, você irá criar dois arquivos: (1) É o arquivo .django
, no qual você irá inserir as variáveis de ambiente do contêiner do Django; (2) O arquivo .postgres
, onde as as variáveis de configuração do banco estarão. Após isso, rode:
docker compose -f local.yml build
docker compose -f local.yml up
Pronto!
A documentação pode ser encontrada em API Docs ou em API Docs (Prod)