By G1T7
"With the nation healing from Covid-19, a 'New Normal' API needs to be established to cohesively coordinate effort for ensuring our recovery trajectory remains on course."
Prior to the pandemic, Singapore was host to many events, both large and small scale. Locus serves to enable community-building again in the new normal by empowering both participants and organisers the convenience of keeping in sync with the prevailing guidelines.
Event Organizers and Participants
Event Management
Users have the freedom to take part in public events that can accommodate a number of participants based on the prevailing restrictions and guidelines. Users can also organise events based on their interests and choose to make them private. Our application is updated with the prevailing measures and will be convenient for users to abide to them.
Locus API
As a complement to our application, we created a self-sufficient microservice, LocusAPI which gathers news and acts as a content management system. LocusAPI's public endpoints allow users to gather information such as Covid-19 Updates and Government Press Releases. The documentation for this microservice can be found here. The repository for this service can also be found here.
Image Filtering
To ensure that Locus is a family friendly application, we included a filter for any image uploading functionality within the application. This service utilises Google Cloud Vision to protect against inappropriate content.
Private Events
Recognising the need for some events to be private and exclusive, we included the use of a special invite code within our application that organizers can share.
OpenAttestation Verification
To ensure that guidelines governing events are followed, we have to ensure that the vaccination status of our users are valid and updated. As such, we automated the process of validating a user's vaccination status with the use of a microservice. The repository can be found here.
To find out more about our API endpoints, you can look at our detailed documentation here.
- Scheduling algorithm for organisers to have an overview of venues that are available for the time of event
- Inclusion of a TraceTogether API that allows us to consolidate all the possible event spaces in Singapore, this would then support the scheduling algorithm by ensuring the event locations are unique
- Attendance taking using Event Ticket QR code
$ git clone https://github.com/iPhantasmic/Locus.git
Field | Description |
---|---|
spring.datasource.url | Connection string/URL of the SQL database for Spring Boot project. |
spring.datasource.password | Password credentials for database. |
jwt.secret | Secret key for JWT. Should be a long random string that is secret to you. |
jwt.admin.pass | Password for default admin user. |
oa.healthcert.url | URL for the health certificate verification endpoint. Should follow the form of https://domain/verifyvaccination |
news.microservice.url | URL for the news microservice. This endpoint requires an API key to be passed for verification. Should follow the form of https://domain/admin?API_KEY=xxx |
spring.mail.username | Email address of account that would be sending out the emails for our email service. |
spring.mail.password | Password credential for the above email account. |
For UNIX:
$ ./mvnw spring-boot:run
For Windows:
$ mvn spring-boot:run
The backend will be hosted on port 8080
$ cd client
$ npm i
$ npm run dev
The client will be accessible from port 3000
- We do not own or license any copyrights in the images used in the application. You may use the Services and the contents contained in the Services solely for your own individual, non-commercial and informational use only.