README.md (view raw)
1
2
3[](code_of_conduct.md)
4
5# Caroster - Group carpool to your event
6
7Caroster is an easy and free app to organize group carpooling for an event, a party, a seminar, a sports event, a camp, a ski trip…
8
9> Are you on GitHub ? Please use the [reference repository on GitLab](https://git.octree.ch/p/caroster) for issues and pull requests.
10
11## Getting Started
12
13These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
14
15Caroster is composed of two parts:
16
17- A frontend app based on [NextJS](https://nextjs.org/)
18- A backend server using [Strapi](https://strapi.io/)
19
20> Caroster is currently in Beta. Big changes can happen, especially in terms of data architecture.
21
22### Prerequisites
23
24To fully utilize your instance of Caroster, you will need an SMTP configuration to send emails.
25
26### Installing
27
28Clone the repo locally:
29
30```shell
31git clone https://git.octree.ch/p/caroster.git
32cd caroster
33```
34
35### Run with Docker
36
37First, edit `docker-compose.yml` to provide your SMTP configuration:
38
39```yaml
40version: "3"
41services:
42 app:
43 ...
44 SMTP_HOST: smtp.myserver.org
45 SMTP_PORT: 587
46 SMTP_USERNAME: user
47 SMTP_PASSWORD: password
48...
49```
50
51Then, create containers with Docker Compose:
52
53```shell
54docker compose up
55```
56
57Wait a few minutes while the application downloads needed packages,
58then go to http://localhost:8080.
59
60You can log on http://localhost:8080/admin with email `admin@example.org`
61and password `caroster`.
62
63## Development
64
65### Frontend
66
67These steps will prepare the frontend to run in development mode.
68
69```shell
70cd frontend
71yarn # or 'npm install'
72yarn dev
73```
74
75The frontend is now accessible on http://localhost:3000
76
77### Backend
78
79These steps will prepare and configure the backend to run in development mode.
80
81> You need a Postgres database running locally. Start one with `docker compose up psql -d`.
82
83```shell
84cd backend
85yarn # or 'npm install'
86cp .env.example .env
87vi .env # Edit with your own configuration
88yarn develop
89```
90
91The Strapi server is now ready and the admin is accessible on http://localhost:1337/admin.
92
93## Running the tests
94
95A few tests are available to check GraphQL endpoints behavior in the `e2e` directory.
96
97First, run Strapi in test mode:
98
99```shell
100cd backend
101yarn start-test
102```
103
104Then, run the tests:
105
106```shell
107cd e2e
108yarn
109yarn gql
110yarn test
111```
112
113## Contributing
114
115Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.
116
117## Authors
118
119- [Octree](https://github.com/octree-gva) - sustainable startup studio - https://octree.ch
120
121See also the list of [contributors](https://github.com/octree-gva/caroster/graphs/contributors) who participated in this project.
122
123## License
124
125This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details