Ecosampler is a full-stack surveying tool, intended for scientists and institutions. You can create new projects, with forms, that includes questions. The general user can fill out the forms and gather information in a database.
- React-js 18.2.0 for frontend: It provides a responsive option, that is very popular nowadays
- AntDesign 5.4.6: A React framework with bulit-in components. It has components that the team really likes and suits the theme of the program
- Java Spring 3.1.0 for backend: A popular choice among developers in both commercial and personal use. It also has a lot of history, so there are already answered questions for it.
- PostgreSQL 15.2 for the database: Our dataflow revolves around connections so a relational database seems to fit the case. We also have the most experience with PostgreSQL, and Java Spring has an adapter for it as well.
With a set initial data you can use this code in the terminal:
docker-compose --project-name eco-sampler-test up
- Setup the proper environment variables
- 'JWT_SECRET'
- 512bit Hex Key
- 'DB_PASSWORD'
- Always use strong production password
- 'DB_USER'
- Always use non-standard username
- Run:
docker-compose -f docker-compose-production.yml --project-name eco-sampler-production up -d
- Make a coffee until the build is finished
- When the containers are running you need to initialize with the provided INIT-TABLES.sql
- Install Postgres
- Create new database: ecosampler
- Setup the proper environment variables
- 'JWT_SECRET'
- 512bit Hex Key
- 'DB_PASSWORD'
- 'DB_USER'
- 'SPRING_PROFILES_ACTIVE=idea,dev'
- Run the application. The starter class is called EcoSamplerApp Optional: If you want to access the default emails, search for the DBInitializer.
- Visit the website.
- Log in
The director is the head of the institute. Has all permissions The credentials for the director are:
- Email: director@codecool.com
- Password: director
- Click on the register button on the hotbar.
- Provide the information.
- Done!
- Click on the projects tab on the hotbar.
- Click on the small "+" sign in the bottom right corner.
- Fill in the Project name, description and assign project leader(s) to it.
- Click submit.
The project leader manages the project. The director also has these permissions.
- Click on the project you want to add the form to from the project list.
- Click on the small "+" sign in the bottom right corner.
- Fill in the form name.
- You can add a new question with the "add field" button
- Type in the question description and select the question types.
- When you're done, press submit.
- Visit the project list.
- Find the project you want to assign the user to, and click the human portrait button.
- Assign people in the menu.
The scientist is the one who fills the forms.
- Select the form you want to fill from the project.
- Press submit.