Skip to content

srikanth-iyengar/asyph

Repository files navigation

CircleCI Website GitHub GitHub pull requests GitHub closed pull requests GitHub last commit

Architecture of Asyph

service_architecture

🤖 Installation

make install-dev

💻 Development

To run any server cd to that server directory and run

gradle bootRun

Or you can use the Makefile to run the server

make up-gateway
make up-user-service
make up-problem-service
make up-judge-service

If you are too lazy, start all the services by running

docker-compose up

Make sure that you have all the variables present in your environment

Here is the sample .env file

GMAIL_PASSWORD=${GMAIL_PASSWORD}
ASTRA_API_APPLICATION-TOKEN=${ASTRA_TOKEN}
ASTRA_API_DATABASE-ID=${ASTRA_DB_ID}
ASTRA_API_DATABASE-REGION=${ASTRA_API_DB_REGION}
ASTRA_CQL_DRIVER-CONFIG_BASIC_SESSION-KEYSPACE=${ASTRA_SESSION_KEYSPACE}
GMAIL_ACCOUNT=${GMAIL_ID}

📄 API Docs

User Service Api Doc: https://gateway-srikanth-iyengar.cloud.okteto.net/api/v1/user/swagger-ui/index.html
Problems Contest Service Api Doc: https://gateway-srikanth-iyengar.cloud.okteto.net/api/v1/Problems-Contest-Service/swagger-ui/index.html

✏️ Todo

  • Currently using in memory jobstore(which is not persistent) for quartz scheduler migrate to cockroachdb as a job store
  • Judge doesn't update the execution status of submission
  • Sending contest reminder for the active users if pending
  • Elo rating system not implemented yet