mirror of https://github.com/doccano/doccano.git
Browse Source
Merge pull request #780 from kuraga/patch-2b
Merge pull request #780 from kuraga/patch-2b
Update project_structure.mdpull/856/head
Hiroki Nakayama
4 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 48 additions and 36 deletions
Split View
Diff Options
@ -1,70 +1,82 @@ |
|||
# Project Structure |
|||
|
|||
In doccano v1.x, the application consists of a frontend and backend API. They are stored in the `frontend` and `app` directories. |
|||
The important files/directories are as follows: |
|||
|
|||
```bash |
|||
. |
|||
├── app |
|||
``` |
|||
/ |
|||
├── app/ |
|||
├── frontend/ |
|||
├── nginx/ |
|||
├── tools/ |
|||
├── docker-compose.dev.yml |
|||
├── docker-compose.prod.yml |
|||
├── frontend |
|||
├── nginx |
|||
└── tools |
|||
└── docker-compose.prod.yml |
|||
``` |
|||
|
|||
The other important files/directories are as follows: |
|||
Consider them: |
|||
|
|||
**[app/](https://github.com/doccano/doccano/tree/master/app)** |
|||
|
|||
The `app/api` directory contains backend code. See [below](#Backend). |
|||
|
|||
- [docker-compose.dev.yml](https://github.com/doccano/doccano/blob/master/docker-compose.dev.yml) |
|||
- [docker-compose.prod.yml](https://github.com/doccano/doccano/blob/master/docker-compose.prod.yml) |
|||
- [nginx](https://github.com/doccano/doccano/tree/master/nginx) |
|||
- [tools](https://github.com/doccano/doccano/tree/master/tools) |
|||
**[frontend/](https://github.com/doccano/doccano/tree/master/frontend)** |
|||
|
|||
The `app/api` directory contains frontend code. See [below](#Frontend). |
|||
|
|||
**[docker-compose.dev.yml](https://github.com/doccano/doccano/blob/master/docker-compose.dev.yml)** |
|||
|
|||
The `docker-compose.dev.yml` file contains configuration to run a development environment. Once we run the command `docker-compose -f docker-compose.dev.yml up`, compose runs backend API and frontend development containers. |
|||
The `docker-compose.dev.yml` file contains [Docker Compose](https://docs.docker.com/compose) configuration to run a development environment. |
|||
Once we run the command `docker-compose -f docker-compose.dev.yml up`, compose runs backend API and frontend development containers. |
|||
|
|||
**[docker-compose.prod.yml](https://github.com/doccano/doccano/blob/master/docker-compose.prod.yml)** |
|||
|
|||
The `docker-compose.prod.yml` file contains configuration to run a production environment. We adopted the three tier architecture. Once we run the command `docker-compose -f docker-compose.prod.yml up`, compose builds frontend and runs DBMS, backend API and web server containers. |
|||
The `docker-compose.prod.yml` file contains [Docker Compose](https://docs.docker.com/compose) configuration to run a production environment. |
|||
We adopted the three tier architecture. Once we run the command `docker-compose -f docker-compose.prod.yml up`, compose builds frontend and runs DBMS, backend API and web server containers. |
|||
|
|||
**[nginx](https://github.com/doccano/doccano/tree/master/nginx)** |
|||
|
|||
The `nginx` directory contains a nginx configuration file and Docker container. They are used only in `docker-compose.prod.yml`. |
|||
The `nginx` directory contains a NGINX configuration file and Docker container. They are used only in `docker-compose.prod.yml`. |
|||
|
|||
**[tools](https://github.com/doccano/doccano/tree/master/tools)** |
|||
|
|||
The `tools` directory contains some shell scripts. They are used for CI, CD and so on. |
|||
|
|||
## Frontend |
|||
|
|||
The directory structure of the frontend follows Nuxt.js one. See the Nuxt.js documentation for details: |
|||
Also, there are directories and files contain doccano v0.x codes. |
|||
In the future, they will be integrated into the currect code or removed: |
|||
|
|||
- [Nuxt.js/Directory Structure](https://nuxtjs.org/guide/directory-structure/) |
|||
``` |
|||
/ |
|||
├── app/ |
|||
├── └── server/ |
|||
└── docker-compose.yml |
|||
``` |
|||
|
|||
## Backend API |
|||
## Backend |
|||
|
|||
The directory structure of the backend api follows Django one. The important directories are as follows: |
|||
The directory structure of the backend follows [Django](https://www.djangoproject.com) one. |
|||
The important directories are as follows: |
|||
|
|||
```bash |
|||
. |
|||
├── api |
|||
├── app |
|||
├── authentification |
|||
└── server |
|||
``` |
|||
/ |
|||
├── app/ |
|||
├── ├── api/ |
|||
├── ├── app/ |
|||
└── └── authentification/ |
|||
``` |
|||
|
|||
**[app/api](https://github.com/doccano/doccano/tree/master/app/api)** |
|||
**[app/api/](https://github.com/doccano/doccano/tree/master/app/api)** |
|||
|
|||
The `api` directory contains backend API application. We use Django Rest Framework to implement the API. If you want to add new API, change the contents of this directory. |
|||
The `app/api` directory contains backend API application. We use [Django Rest Framework](https://www.django-rest-framework.org) to implement the API. |
|||
If you want to add new API, change the contents of this directory. |
|||
|
|||
**[app/app](https://github.com/doccano/doccano/tree/master/app/app)** |
|||
**[app/app/](https://github.com/doccano/doccano/tree/master/app/app)** |
|||
|
|||
The `app` directory contains Django project settings. See [Writing your first Django app, part 1](https://docs.djangoproject.com/en/3.0/intro/tutorial01/#creating-a-project). |
|||
The `app/app` directory contains Django project settings. See [Writing your first Django app, part 1](https://docs.djangoproject.com/en/3.0/intro/tutorial01/#creating-a-project). |
|||
|
|||
**[app/authentification](https://github.com/doccano/doccano/tree/master/app/authentification)** |
|||
**[app/authentification/](https://github.com/doccano/doccano/tree/master/app/authentification)** |
|||
|
|||
The `authentification` directory contains authentification application. It is mainly used for user signup. |
|||
The `app/authentification` directory contains authentification application. It is mainly used for user signup. |
|||
|
|||
**[app/server](https://github.com/doccano/doccano/tree/master/app/server)** |
|||
## Frontend |
|||
|
|||
The `server` directory contains doccano v0.x codes. In the future, this directory will be integrated into the `api` directory. |
|||
The `frontent` directory structure of the frontend follows [Nuxt.js](https://ru.nuxtjs.org) one. |
|||
See the [Nuxt.js documentation](https://nuxtjs.org/guide/directory-structure/) for details. |
Write
Preview
Loading…
Cancel
Save