Гаджеты готовы к учету ...
Гаджеты готовы к учету ...

Всем привет!

Хочу поделиться историей создания проекта, над которым я работал последние несколько лет — foxBase (https://fox-base.ru).

Как часто вам приходилось переключаться между десятком приложений для управления разными аспектами вашей работы и жизни? Блокнот для заметок, Excel для финансов, Trello для задач, отдельные инструменты для хранения кода и документации... Знакомая ситуация?

Меня зовут Игорь, я разработчик, и я столкнулся с этой проблемой в полный рост. Мне нужен был один инструмент, который объединил бы всё: от личных заметок до сложных бизнес-форм, от хранения кода до ведения домашнего бюджета. Так родилась идея foxBase.

Что это такое?

foxBase — это веб-приложение для создания универсальных баз знаний и данных. Его ключевая особенность — невероятная гибкость. Это не жёсткий конструктор, а скорее «цифровой конструктор ЛЕГО», где вы сами решаете, как структурировать информацию.

Для кого это?

  • Разработчики: Хранение сниппетов кода с подсветкой синтаксиса, документация по проектам.

  • Предприниматели и менеджеры: Управление задачами, базами клиентов, проектная документация.

  • Семьи и частные пользователи: Домашняя бухгалтерия, каталог рецептов, планирование путешествий, ведение генеалогического древа.

  • Исследователи и аналитики: Структурирование данных, ведение записей, создание отчётов

Пример: импорт данных с сервера по префиксу.
Пример: импорт данных с сервера по префиксу.

Я не хотел делать очередной Notion или Airtable. В основе foxBase лежит несколько простых, но мощных абстракций:

  1. Древовидная структура. Все данные организованы в дерево. Это интуитивно понятно и позволяет создавать любые иерархии: от простого списка дел до сложной базы знаний по проекту.

  2. Ноды (узлы) и их типы. Каждый узел в дереве имеет тип (например, Папка ТаблицаФормаСтатья, Персона, ЗОЖ, Деньгиб Календарь ...). В зависимости от типа, узел получает определенный набор вкладок и поведение. Типы можно создавать и настраивать.

  3. Вкладки (Tabs). Это главный инструмент гибкости. Каждый узел может иметь набор вкладок:

    • Info: Встроенный Jupyter-подобный редактор, где можно комбинировать ячейки с текстом (Markdown), кодом (с подсветкой синтаксиса), изображениями и другими данными. Каждая строка в любой таблице может иметь тип Info (например, при денежном учете - для прикреплением чеков или гарантий или инструкциий ...)

    • Persona: Несколько вкладок - Info, persona, family tree, events.

    • ЗОЖ: HLS Total или HLS Day.

    • И любые другие, определяемые типом узла.

Ключевые сценарии использования

Гибкость системы позволяет использовать ее для совершенно разных задач.

1. Ведение инвентаризации

Я подробно описал этот кейс у себя в блоге. foxBase идеально подходит для учета всего: от домашней техники с чеками и гарантиями до инструментов в гараже.

Учет гаджетов и оборудования с прикрепленными чеками и описаниями.
Учет гаджетов и оборудования с прикрепленными чеками и описаниями.

2. Разработка: хранение кода и документации

Встроенный редактор с подсветкой синтаксиса для большинства языков программирования позволяет удобно хранить сниппеты, конфиги, примеры кода и сопровождать их развернутыми комментариями прямо в Markdown. RunTime редактор для HTML, JS, CSS, JSON.

3. No-code создание форм и интерфейсов

В разработке тип узла Form, который позволяет создавать интерфейсы для сбора данных без написания кода. Например, форму для приема заказов или анкету для опроса.

Пример формы для приема заказов на сборку ПК в режиме конструктора.
Пример формы для приема заказов на сборку ПК в режиме конструктора.

4. Персональная база знаний

Отличная замена Notion и Confluence. С помощью древовидной структуры и гибкого редактора можно вести проекты, конспекты, планы и личные дневники.

5. Специализированные трекеры

Реализованы встроенные типы для конкретных задач:

  • Finance: Домашняя бухгалтерия с учетом расходов/доходов.

  • Persona: Информация о семье

Семья Пушкина Александра Сергеевича
Семья Пушкина Александра Сергеевича
  • Family Tree: Визуальное построение генеалогического древа.

Семейное дерево
Семейное дерево
  • HLS (Healthy Lifestyle): Трекер привычек, питания, тренировок и сна.

  • Events: Визуализация жизни в неделях — уникальный способ регистрации и отображения событий на временной шкале с возможностью отображения событий в календаре. Статьи про Events публиковались ранее на habr. Здесь реализована более расшеренная версия.

Визуализация событий на шкале "годы/недели".
Визуализация событий на шкале "годы/недели".

Чем это лучше/хуже существующих решений?

Критерий

foxBase

Notion

Airtable

Excel/Sheets

Локальное хранение

✅ Да

❌ Нет

❌ Нет

⚠️ Зависит

Гибкость структуры

✅ Высокая

⚠️ Средняя

✅ Высокая

❌ Низкая

Работа с кодом

✅ Отлично

❌ Плохо

❌ Нет

❌ Нет

No-code формы

✅ Есть

❌ Нет

✅ Есть

❌ Нет

Оффлайн-работа

✅ Полная

❌ Нет

❌ Нет

✅ Частично

Цена

Бесплатно

Подписка

Подписка

Бесплатно/Подписка

Идеально для: разработчиков, технических писателей, исследователей, малого бизнеса и всех, кому нужен полный контроль над своими данными без ежемесячных подписок.

Не идеально для: тех, кому нужны готовые шаблоны «из коробки» и кто не готов потратить 15 минут на освоение базовых принципов.

Ссылки и попробовать

Проект живой и развивается. Вот некоторые ссылки на него:

Вместо заключения

Я не ставил целью создать монетизацию. Главная задача — решить собственную боль и, возможно, помочь в этом кому-то еще.

Буду рад услышать ваше мнение здесь, в комментариях!

  • Сталкивались ли вы с подобной проблемой хранения данных?

  • Какой ваш идеальный инструмент для организации информации?

  • Какие сценарии использования вы видите для такого инструмента?

Спасибо, что дочитали!

P.S. Это новая версия foxBase. Старая версия доступна по ссылке

Комментарии (26)


  1. Kahelman
    27.08.2025 13:33

    И как в вашей системе что-то искать? И потом интегрировать с другими приложениями? В соседней ветке товарищ делился опытом как все приложения заменил одним текстовым файлом. И расписывал преимущества. А вы новый огород сгородили.

    Уже пытались сделать -не заходит.
    Если исходить из вашего названия то были:

    FixPro
    DBASE
    clipper
    MS Access.

    Делалось для тех же целей- совет приложение сам быстро и удобно. Не взлетело.

    С вашим приложением на все ЖКУ следующие проблемы:

    1 нужна версия под IPhone/ Android
    2 нужна версия под Linux/Windows/Mac
    3. Нужна синхронизация в этом зоопарке.

    Просто ещё одно приложение под одну платформу уже никому не интересно. :(


    1. akaIP Автор
      27.08.2025 13:33

      • Это WEB приложение работает на любом устройстве, где запускаются современные браузеры и соответственно работает на любой операционке с адаптацией под разрешение экрана

      • Синхронизация через развертывание сервера CouchDB дома или где-то в сети. Дома развернут такой сервер и доступ к нему через VPN для всех членов семьи. Ниже скриншот со списком некоторых db на домашнем сервере.

      Список баз данных с домашнего сервера для префикса aka-
      Список баз данных с домашнего сервера для префикса aka-
      • без развертывания сервера - работает автономно на Вашем устройстве с возможностью экспорта и импорта баз данных


  1. pecheny
    27.08.2025 13:33

    Ваш бы энтузиазм, да на освоение emacs направить. Идеальная платформа для желающих делать все и по-своему.
    Нет, если вам реально удобно всем этим пользоваться – это просто отлично.
    Скажите, а какой частью функционала вы пользуетесь на регулярной основе?
    Можете описать свои типичные сценарии использования:
    – форм
    – списка дел
    – зож трекера
    – бухгалтерии
    – календаря
    Это было бы самое интересное. Почему не рассмотрели для себя хотя бы obsidian в качестве альтернативы?


    1. akaIP Автор
      27.08.2025 13:33

      • Это новая версия приложения, переписанная с начала года.

      • В старой версии более 2-х лет вели с женой домашнюю бухгалтерию.

      • Занимаясь фитнесом, жена вела ЗОЖ трекер. На основании ее пожеланий в новую версию добавлена возможность прикрепления к любой строке таблиц отдельного документа любого типа (например фотографии блюд). А для домашней бухгалтерии фото чеков, гарантии, инструкции ...

      • Календарь использовался в составе FamilyiTree и Events (события) для отображения наиболее важных дат. Ниже частичное дерево автора

      • Формы пока в активной доработке, но собственное приложение с таблицами, различными полями и результирующей таблицей уже можно создавать (например свой учет чего-либо). Доделывается когда результирующем будет любая форма или, например, некий Dashboard.


      1. pecheny
        27.08.2025 13:33

        Что ж, похоже вы действительно создали для своей семьи полезный инструмент, с возможностью наращивать его под свои потребности. Это замечательно. Главный недостаток мне сейчас видится в том, что для веба нет особых возможностей для локального хранения копии данных. К тому же домашняя машина – единая точка отказа. Случись что с диском; нет дома электричества – нет доступа к календарю и задачам.
        Про формы, например, я бы так переспросил: а какую свою потребность вы хотите закрыть этим функционалом?


        1. akaIP Автор
          27.08.2025 13:33

          В WEBe - ничего не хранится, только запуск самого приложения. Все хранится локально на Вашем устройстве, без сетевого развертывания надо почаще - экспортировать (делать копии) базы. Любая база это единичный файл в формате JSON. Храните его отдельно или открывайте на другом устройстве.
          Формы хочу использовать для разработки приложений под конкретного заказчика. Первое такое приложение уже работает в фитнес клубе около двух с половиной лет (на старой версии).

          Реальные базы развернутые на домашнем сервере. Для Фитнеса сервер развернут в интернете, а здесь хранится его копия.
          Реальные базы развернутые на домашнем сервере. Для Фитнеса сервер развернут в интернете, а здесь хранится его копия.


          1. pecheny
            27.08.2025 13:33

            Все хранится локально на Вашем устройстве

            То есть, когда ваша супруга с телефона в фитнес трекере что-то тыкает, оно у нее на телефоне и сохраняется?
            Скорее всего, у вас есть клиент и сервер. Клиент работает где угодно, а сервер "на домашней машине, к которой у всей семьи доступ через впн".
            Речь о том, что если машина с сервером ушла в даун по какой-то причине, то все клиенты завязанные на нее превращаются в тыкву без возможности восстановить данные.

            Формы хочу использовать для разработки приложений под конкретного заказчика.

            Ага. То есть по сути вы делайте не столько органайзер, сколько фреймворк для кастомной клиентской разработки. В этой плоскости мотивация становится более понятной.


            1. akaIP Автор
              27.08.2025 13:33

              • Используется технология - Mobile First . Данные в первую очередь хранятся на Вашем устройстве и при наличии связи с сервером - синхронизируется с ним. Если при настроенной синхронизации удалить данные на сервере - они восстановятся с устройства на котором хотя бы раз запускалось приложение и наоборот при удалении на устройстве или запуска впервые - данные синхронизируются с сервером.

              • Да, среди целей и быстрая разработка приложений для различных случаев использования. Ниже пример (в режиме конструктора) для приложения "Сборка компьютера"

              Это конструктор формы для Иванова, Петрова ...
              Это конструктор формы для Иванова, Петрова ...
              А это конструктор для результирующей формы (по всем клиентам)
              А это конструктор для результирующей формы (по всем клиентам)


              1. pecheny
                27.08.2025 13:33

                Браузерный Local storage? Не лучшее решение для основного хранилища, но пусть так.


                1. akaIP Автор
                  27.08.2025 13:33

                  Используется связка CouchDB и PouchDB. PouchDB использует локальные браузерные API для хранения данных, такие как IndexedDB (предпочтительно) или WebSQL (при отсутствии IndexedDB).  Local storage используется только для временных данных - положение или размеры некоторых форм, состояния дерева и т.д.


                  1. pecheny
                    27.08.2025 13:33

                    О, PouchDB прикольная штука. Возьму на заметку.