Automatically check websites using custom test cases — simple, fast, and without programming skills.
https://drive.google.com/file/d/1WNYOQuKmBErRn2LTTmfNBKuwV7kP_nsL/view?usp=sharing
TODO
The goal of the project is to create a simple and accessible tool for checking websites for basic interface elements such as fields, buttons, and headings. The user enters a URL and specifies what needs to be checked, and the system runs an automated test and provides a result in the form of ✅/❌ for each question.
-
Go-based microservices architecture (minimum 3 services) (3 points)
Architecture includes testing service, check url service, authorization service, database service
-
RESTful API with Swagger documentation (1 point)
link to swagger
-
gRPC implementation for communication between microservices (1 point)
Have not used gRPC
-
PostgreSQL database with proper schema design (1 point)
Add link to schema here
-
JWT-based authentication and authorization (1 point)
Implemented JWT-authentication
-
Comprehensive unit and integration tests (1 point)
Implemented tests
-
Flutter-based cross-platform application (mobile + web) (3 points)
Made cross-platform flutter app
-
Responsive UI design with custom widgets (1 point)
UI design is responsive and has custom widgets
-
State management implementation (1 point)
Used Provider
-
Offline data persistence (1 point)
Have sign in and sign up form with database
-
Unit and widget tests (1 point)
Implemented tests
-
Support light and dark mode (1 point)
Implemented theme switching
-
Docker compose for all services (1 point)
Implemented
-
CI/CD pipeline implementation (1 point)
Implemented
-
Environment configuration management using config files (1 point)
Implemented
-
GitHub pages for the project (1 point)
Link to website
-
GitHub organization with well-maintained repository (1 point)
Link: https://github.com/Golang-Flutter-Course-Project/Autotester2inc
-
Regular commits and meaningful pull requests from all team members (1 point)
-
Project board (GitHub Projects) with task tracking (1 point)
Link: https://github.com/orgs/Golang-Flutter-Course-Project/projects/1
-
Team member roles and responsibilities documentation (1 point)
Described in submission file on Moodle
-
Project overview and setup instructions (1 point)
In README
-
Screenshots and GIFs of key features (1 point)
In README
-
API documentation (1 point)
Link: https://github.com/Golang-Flutter-Course-Project/Autotester2inc/tree/main/internal
-
Architecture diagrams and explanations (1 point)
Link: https://github.com/Golang-Flutter-Course-Project/Autotester2inc/tree/main/internal
-
Consistent code style and formatting during CI/CD pipeline (1 point)
Implemented
-
Code review participation and resolution (1 point)
Code was reviewed orally on team meetings
-
Localization for Russian (RU) and English (ENG) languages (2 points)
-
Good UI/UX design (up to 3 points)
-
Integration with external APIs (fitness trackers, health devices) (up to 5 points)
Our app parses other websites and integrates with DOM architecture
-
Comprehensive error handling and user feedback (up to 2 points)
Api sends proper responses to handle
-
Advanced animations and transitions (up to 3 points)
-
Widget implementation for native mobile elements (up to 2 points)
App is cross-platform for web and mobile
Total points implemented: around 28/30 (excluding bonus points)
To setup application and run it locally you will need to clone the repository:
git clone https://github.com/Golang-Flutter-Course-ProjectTo run tests:
Flutter:
cd frontend
flutter test
Go:
cd backend
go test ./...
Flutter CI:
- Link to CI: https://github.com/cQu1x/Autotester/blob/main/.github/workflows/flutter_ci.yml
- Downloads flutter
- Runs tests
- Creates build for web application (important for code updates)
Golang CI:
- Link to CI: https://github.com/Golang-Flutter-Course-Project/Autotester2inc/blob/main/.github/workflows/go-ci.yml
- Downloads Golang
- Runs tests and linting




