Вузовский сервис для создания простых форм, сбора заявок и их администрирования. Проект задуман как лёгкая альтернатива Google/Yandex Forms для нужд студенческого научного общества и внутренних задач вуза, без лишней сложности.
- Быстро создавать формы (заявки, регистрации, опросы) и делиться ссылкой.
- Собирать ответы в одном месте, удобно разбирать и экспортировать.
- Давать проходящему пользователю историю собственных отправок.
- Быть частью экосистемы проектов Студенческого научного общества института точных наук и цифровых технологий.
- Регистрация/вход.
- "Мои формы": список, создание, удаление/архивация.
- Конструктор формы:
- Заголовок, описание.
- Поля: текст, многострочный текст, один выбор, множественный выбор, дата/время, чекбокс согласия.
- Настройки поля: название, обязательность, подсказка, порядок.
- Публичная страница формы по ссылке.
- Приём ответов (заявок) и сохранение результатов.
- Админка заявок:
- Входящие список.
- Просмотр заявки.
- Статусы:
new/in_progress/closed. - Экспорт CSV и Excel.
- Мои отправки: история прохождений для пользователя.
- Хорошие дефолты: форма работоспособна сразу после добавления полей.
- Минимум настроек на MVP: без сложной логики ветвления, без сотни типов полей.
- Весь основной путь в 2–3 клика: создать -> получить ссылку -> смотреть входящие.
- Чёткие роли и права (мультиарендность): данные одного автора не видны другим.
- Frontend: Svelte 5
- Backend: Bun.sh
- ORM: Prisma.
- DB: PostgreSQL.
- Cache/Queue/Rate limit: Redis.
- Web UI: конструктор форм, публичные формы, админка заявок, история отправок.
- API: RPC
- Redis:
- Rate limiting на публичные формы (защита от спама).
- Очередь фоновых задач (например: уведомления, экспорт).
- Внутренний режим: доступ к созданию форм только для пользователей экосистемы/вуза.
- Публичный режим: формы доступны по ссылке.
- История отправок:
- Для авторизованных отправок сохраняется в профиле пользователя.
- Для анонимных отправок история недоступна (иначе нельзя гарантировать идентификацию).
- Роли и совместное управление формами (команды).
- Вебхуки/интеграции.
- Файлы/вложения.
- Шаблоны форм (регистрация на мероприятие, заявка в СНО, обратная связь).
- Умные ограничения: лимит ответов, закрытие по дате, приглашения.