Visual Circuit Designer
Visual Circuit Designer – is a web-based tool for designing, simulating, and managing digital logic circuits in the browser. It features a drag-and-drop interface, real-time manipulation, and cloud saving, making it ideal for engineers, students, and developers.
📡 Link to our product 📡
📹 Video demo v2 📹
- Visual Circuit Design – Drag-and-drop logic gates (AND, OR, INPUT, OUTPUT, etc.)
- Real-Time Editing – Rotate, flip, duplicate, and connect components dynamically
- Cloud Saving – Save/load circuits via backend API (preserves structure, inputs, layout)
- User-Friendly UX – Grid snapping, zoom/pan, multi-select (Ctrl + drag), context menus
- No Local Software Needed – Fully browser-based
- Auth → Register/login to access saved projects
- Dashboard → View, load, delete, or create new circuits
- Workspace → Build circuits visually, save/load from cloud
Ideal for: Engineers, students, and developers learning or prototyping digital logic.
Below you can see a high-level context diagram of Visual Circuit Designer, showing all key stakeholders, external systems and data flows.
Project Context Diagram- Engineer / Student: designs, simulates and saves circuits via the browser UI
- System Admin: manages user accounts and monitors system health
- Browser Client (Next.js / React): front-end UI communicating over REST & WebSocket
- Docker Compose: orchestrates all backend & monitoring containers
- API Service (Node.js / Express): central gateway for business logic
- Authentication Service: issues & validates OAuth2 tokens
- Database Service: CRUD interface to PostgreSQL
- Simulation Engine (Python): executes logic simulations
- Circuit DB (PostgreSQL): stores project schemas & metadata
- Cloud Storage (S3-compatible): holds raw project files & exports
- Analytics Service: collects usage events (e.g. Google Analytics)
- Monitoring Stack: Promtail → Loki → Grafana for logging & dashboards
- User → Browser: UI interaction
- Browser → API: REST calls / WebSocket messages
- API → Auth, DB, Sim, S3, Analytics: token validation, data persistence, simulation runs, file storage, telemetry
- Compose → Services & Monitoring: container startup
- Promtail → Loki → Grafana: log pipeline; Admin views dashboards
The following team members have contributed to the development of Visual Circuit Designer as of 12:03 PM CEST on Saturday, July 19, 2025:
- Iskander Kutlakhmetov - Runner Node
- Nikita Khripunkov - Back-end Developer
- Amir Gabdullin - Back-end Developer
- Islam Gainullin - Front-end Developer
- Ernest Kudakaev - Front-end Developer
For more detailed information about their contributions, please refer to the Development documentation.
| Stage | Status | Priority |
|---|---|---|
| MVP v0 | delivered | Must |
| MVP v1 | delivered | |
| Connect Authentication of Users with back-end | done | Must |
| Dashboard page without functionality | done | Should |
| Pop-up interactive window with some settings | done | Should |
| MVP v2 | delivered | |
| Save schematic to user account | done | Must |
| Implement logic of components | done | Must |
| Implement simulation of program | done | Must |
| Dashboard functionality (create/search projects) | done | Must |
| Projects connect to user account | done | Must |
| MVP v3 | in development | |
| Bugs fixing | in process | Should |
| Implement simulation for more than one output | in process | Should |
| New I/Os | in process | Should |
| Priority | Description |
|---|---|
| Must | Critical features without which the release cannot take place |
| Should | Desirable features that are important to enable when possible |
| Optional features or those that are carried over to future versions |
- URL:
http://85.198.81.168/ - Note: You can use any data on the registration page — first sign up, then sign in with the same credentials.
- Open your browser and go to: http://85.198.81.168/
- Wait for the page to fully load.
Important: First create an account via Sign up, then log in via Sign in using the same credentials.
- Click Sign up.
- Fill out the registration form fields:
- Username
- Password
- Confirm Password
- For the MVP you can use any dummy data:
- A fake email (e.g.,
test@example.com) - A simple password (e.g.,
123456)
- Click Register / Sign up.
- You should see a “Registration successful” message.
- Go to Sign in.
- Enter the same credentials you used to register:
- Username / Email
- Password
- Click Log in / Sign in.
- You will be redirected to the Dashboard.
After logging in, you’ll see these sections:
| Section | Description |
|---|---|
| Dashboard | Overview of stats and quick links |
| Data | List of your items with Create, Read, Update, Delete actions |
| Settings | Notifications, privacy options, theme settings |
- Navigate to the Data section.
- Click Create New.
- Fill in the form fields (title, description, date, status).
- Click Save.
- Your new record will appear in the list with edit and delete icons.
- In the top-right corner, click your Username (or profile icon).
- Select Logout.
- You will be redirected back to the sign-in page.
- If you encounter login errors, double-check that you’re entering the exact credentials you registered with.
- Server errors can be inspected in your browser console (F12 → Console).
- Use your browser’s incognito/private mode to clear sessions for testing.
- MVP validation is minimal—feel free to use any test data.
-
Clone the repository:
git clone https://gitlab.pg.innopolis.university/team-45/visual-circuit-designer.git
-
Navigate to the project directory:
cd project -
Install dependencies:
Ensure you have Node.js (v18+) and npm installed.npm install
-
Create a
.envfile (if required):
Copy the example file and edit environment variables as needed.cp .env.example .env
Edit the
.envfile to set API endpoints, database URLs, etc. -
Start the app:
npm run dev
The app will be available at http://localhost:3000
- If you see errors on startup, ensure all environment variables are set correctly in the
.envfile. - If port 3000 is busy, set a different port in your
.envfile (e.g.,PORT=4000). - Make sure you have network access to all required backend services.
Hyperlinks to the Documentation
- Architecture
- Development
- Quality Characteristics & Attribute Scenarios
- Quality Assurance Automated tests
- Quality Assurance User tests
- Сontinuous delivery
- Сontinuous integration
