LINUX.ORG.RU

Совет по выбору библиотеки/фреймворка для web

 ,


0

4

Привет, форум.

Я (не разработчик) хочу сделать web приложение, которое будет позволять работать с базой sqlite или другой. В базе будут в 90% случаев простые текстовые записи. На сайте будет поиск + возможность добавления записей и изменения существующих.

Хочется сделать это без всяких *GPT/AI, по-старинке, напрягая в какой-то степени мозг.

Я не знаю языков программирования, кроме поверхностного знакомства с синтаксисом python, javascript, go. Немного знаю html и css. Пусть это не будет отправной точкой для вашего совета, т. к. могу при необходимости изучить другой язык или другой инструмент.

Посоветуйте язык, к нему библиотеку или фреймворк для того, чтобы максимально быстро и просто реализовать мою задумку.

Это домашний проект для удовольствия и облегчения рутинных задач моей семьи. Ни на какие высокие награды за качество кода, глубокие познания особенностей и настройки БД, я не претендую. Просто хочется написать что-то свое, при этом слишком глубоко не ныряя в лишнюю в моем случае информацию.

Возможно ли сделать эти удобства с помощью одного языка вроде javascript? То есть фуллстэк? Шедевров анимации и интерактивности на сайте не надо, только банальные возможности без перезагрузки страницы, например, получать статус какой-то операции на сервере и прочее.

Почему web? Потому, что хочу иметь возможность использовать ресурс с разных устройств, разных платформ, в том числе мобильных. Понимаю, что нужна будет адаптивная (правильно?) верстка, но это, по-моему, проще, чем под каждую платформу писать нативное приложение.

Буду рад вашим советам.


Бери Django и настраивай админку - особых знаний программирования для таких операций там не требуется.

gruy ★★★★★
()

Бери самый популярный фреймворк к языку, который ты лучше всего знаешь.

theNamelessOne ★★★★★
()

Я (не разработчик) хочу сделать web приложение, которое будет позволять работать с базой sqlite или другой. В базе будут в 90% случаев простые текстовые записи. На сайте будет поиск + возможность добавления записей и изменения существующих.

Хочется сделать это без всяких *GPT/AI, по-старинке, напрягая в какой-то степени мозг.

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

Gentooshnik ★★★★★
()

Пиши на C, будь мужиком. Фреймворк Ульфиус

DumLemming ★★★
()

Посоветуйте язык

Очевидный PHP.

к нему библиотеку или фреймворк

Ненужно, в голой пыхе всё есть.

mydibyje ★★★★
()
Ответ на: комментарий от Kolins

Спасибо. Можешь посоветовать хорошую литературу по работе с этим стэком? Желательно именно про их взаимодействие. То есть как во flask создать маршрут, который jquery будет использовать для обновления данных на странице и т. п. Практические подход. По одиночке можно и документацию, наверное, посмотреть.

Xld
() автор топика

раз языков не знаешь то wordpress, твои знания html css помогут тему натянуть интерфейс подправить.

cylon17
()
Ответ на: комментарий от Xld

Это везде есть, ведь за это отвечает js в браузере. Вам нужны туториалы по php+crud+ajax и ещё pdo+sqlite.

mydibyje ★★★★
()
Ответ на: комментарий от Xld

Я сам не программист. Все делал интуитивно по примерам из документации и срачей со stackoverflow, но у меня был мелкий проект который не для глобального прода.

были формы для приема данных. Они передавались в функции python, которые дергали функции записи в sqlite. Аналогично с отображенеим данных. jquery был нужен чтобы не всю страницу обновлять, а только таблицу с данными.

Kolins ★★★★★
()
Последнее исправление: Kolins (всего исправлений: 1)
Ответ на: комментарий от Kolins

html + jquery в качестве фронтэнда

Лорчую, самое простое

pihter ★★★★★
()
Ответ на: комментарий от gruy

Фронтэнда с бэкэндом. То есть django + что-то, что подходит по твоему мнению под мое описание. Что это «что-то» и есть ли литература, описывающая взаимодействие django + «что-то» на практике.

Xld
() автор топика
Ответ на: комментарий от Xld

Интерактивность вроде обновления контента без обновления страницы в php тоже есть?

На пхп сделай js api - прослойка между фронтом и бд. Интерактивность тебе обеспечит фронт, молча отправляя запрос, получая ответ, поправляя данные на странице

pihter ★★★★★
()
Ответ на: комментарий от Xld

https://developer.mozilla.org/ru/docs/Learn/Server-side/Django

До четвёртой части включительно. Административная панель - и есть твой фронтенд. Взаимодействие админки с бэком программисту не показывают, всё внутри фреймворка. Если захочешь фронт - тогда уже есть варианты. Можно, например, сделать REST API на Django REST Framework, а фронт - на чём хочешь. Можно фронт тоже делать на Django шаблонами, тогда взаимодействие опять будет от тебя скрыто.

В общем, у тебя три варианта. ИМХО начни с админки, потом если захочется большего - задашь вопрос ещё раз. Можешь меня упомянуть.

Gentooshnik ★★★★★
()
Ответ на: комментарий от cobold

Для django думаю проще будет начать с туториала по django rest framework.

В данной задаче DRF вероятно будет не нужен. С него хорошо начинать если стоит задача «разобраться в Django», а тут задача «сделать сайт-БД».

Gentooshnik ★★★★★
()
Ответ на: комментарий от alnkapa

Интересные варианты, спасибо, но для моей задачи немного ограничено. Мне не только CRUD как таковой нужен, но и обработка по определенным алгоритмам входящей информации и другие более сложные вещи, чем простое заполнение таблиц базы данных, авторизация какая-никакая, кое-какие вычисления по условиям. Я уже пробовал подогнать sqlite browser, dbveaver, но это все немного не то.

Xld
() автор топика
Ответ на: комментарий от Xld

Я бы посоветовал пройти php-курс с w3schools, вот их пример с ajax, а про pdo и sqlite почитать на zetcode. Из книг по php с примером создания сайта это классические Никсон, Скляр, есть на русском, но они душноваты.

mydibyje ★★★★
()

Пиши на пхп и без всяких модных фреймворков. Пхп заточен как раз под быстрое накидывание всякой мелочи не особо грамотными людьми и в некоторой степени даже устойчив к багам скриптов (хотя в 8.х версиях в этом плане стало хуже).

firkax ★★★★★
()

Посмотри Астро - все включено, пишешь на одном языке (JavaScript), для базы можно взять SQLite.

https://astro.build/ по-моему у них даже дока переведена на русский

masa
()
Последнее исправление: masa (всего исправлений: 1)

Я (не разработчик) хочу сделать web приложение, которое будет позволять работать с базой sqlite или другой. В базе будут в 90% случаев простые текстовые записи. На сайте будет поиск + возможность добавления записей и изменения существующих.

Тоже не разработчик, для подобной задачи брал flask, изучив оф. доку по нему и по парочке разных туториолов из интернетов.

Интерфейс (полагаю это фронтом по-умному называется?) сделал на бутстрапе. У них достаточно хорошо расписана дока, при условии если в целом понимаешь хтмл.

Единственный минус питона, по крайней мере для меня - сложности с деплоем. Полагаю, с большой вероятностью придется позучать докер или нечто подобоное (тут послушал бы сам более опытных товарищей).

frunobulax ★★★
()
Ответ на: комментарий от Xld

Можешь годную литературу по этому варианту посоветовать?

По jq где-то валялась книжка страниц на 200 - то что тебе надо, завтра гляну.

А вообще, уверен, что пример JSON-sql бекенда на пхп (это в самом простом случае - несколько десятков строк) можно на гуглить, а в книжке по jq научат ajax запросы отправлять

Мне кажется что вот такое простое, без всяких фрейверков - то что тебе надо, хоть поймёшь как оно работает

Если что, с кодом поможем, тут такое каждая вторая собака умеет, а ты, вроде с правильными вопросами заходишь, такому помогать - одно удовольствие)

pihter ★★★★★
()
Ответ на: комментарий от alnkapa

Вот, кстати, если взять готовый js апи для базы как вот товарищ советует, тогда всю логику можно писать на фронте

Отзываю свой совет про бек на пхп - бери вот готовый js api для бд и пиши фронт на jq

pihter ★★★★★
()
Ответ на: комментарий от Xld

Мне не только CRUD как таковой нужен, но и обработка по определенным алгоритмам входящей информации и другие более сложные вещи, чем простое заполнение таблиц базы данных, авторизация какая-никакая, кое-какие вычисления по условиям.

Скорее всего админка Django всё что тебе надо сможет. Не сможет только кастомный look&feel. Он там в комплекте идёт, хоть и с темами.

Gentooshnik ★★★★★
()
Ответ на: комментарий от frunobulax

Полагаю, с большой вероятностью придется позучать докер

На Heroku можно без Докера. На свой VPS лучше без Докера (но дорого).

Gentooshnik ★★★★★
()

Хочется сделать это без всяких *GPT/AI

Зря. Они не могут за тебя код писать, те домохозяйка ничего не напишет как и менеджер, как бы там в обратном курсы nocode и пр скама не пытались убедить. Высер чата придется переписывать, он лишь напихает куски, стыринные с so, но твой код и без этого будет из них состоять, так что разницы никакой. Используй

rtxtxtrx ★★
()
Ответ на: комментарий от frunobulax

хероку вроде теперь платный, а до этого был бесплатным прокси/впн для многих

rtxtxtrx ★★
()
Последнее исправление: rtxtxtrx (всего исправлений: 1)

Могу посоветовать связку из python и streamlit.

Для несложных веб-приложений самое то.

ComradeDOS
()

Фронт: React

Бэк: Flask или FastAPI

Для верстки: Bootstrap или Tailwind

На торрентах полно учебных материалов.

C
()

Frontend: JS + React.js

Backend: Go. Можно и на JS + Node, если сильно хочется.

Как вариант - рассмотри C для фронта и бэка. Тоже интересный вариант. Из плюсов - наиболее «родной» для sqlite язык и приложение будет требовать меньше ресурсов. Из минусов - незначительно замедлится скорость разработки.

vbr ★★★★
()
Последнее исправление: vbr (всего исправлений: 5)
Ответ на: комментарий от vbr

не разработчик

С

приложение будет требовать меньше ресурсов

Ну разумеется. Твоё приложение потребляет гораздо меньше ресурсов, если оно упало.

Nervous ★★★★★
()

Ребят, спасибо огромное все, кто отозвался. Много полезных советов дали, много информации. Возьму время, чтобы почитать про php, pdo, flask, django, jquery, js api, bootstrap, react и другие технологии. Выберу, что покажется подходящим.

Xld
() автор топика
Ответ на: комментарий от Xld

PHP это хрень. Flask/Django - старье. Сейчас FastAPI используют. jQuery - из позапрошлого десятилетия как и PHP. js api что это? Bootstrap — фреймворк от Twitter, кажись, CSS + jQuery, года так 2011. Ты в каком живешь? React говно. Это даже не фреймворк, а либа — сбывшаясь мечта похапешника смешивать логику и разметку прямо в js-коде, типичная PHP-лапша. Используй Vue. Вбивай Vue.js + Fastapi tutorial и наслаждайся. Я с 2017 года сайты делаю на Vue.js. Мой сайт в профиле так же на нем сделан за три дня, включая говно-дизайн из бесплатных обоев и иконок

rtxtxtrx ★★
()
Ответ на: комментарий от rtxtxtrx

Точняк. Тока все таки для новичка лучше начинать не REST, и не с голых апишек. А брать микро фреймфорки. Тч лучше всего Flask. А Vue не так и прост, если по уму писать. Но и jquery уже не вперся. Так что пусть учит всё)) и js и html и python. А то задача у него довольно не простая, а хочет на батарейках выехать. Так не бывает. Батарейки в питоне, фласке, джанге - это лишь кирпичики. Надо знать как и куда их класть для стабильного фундамента. А для этого надо знать и паттерны и питон на беке. А фронт - это фронт. Там другой мир. Там уже рулит нода и ей уже собираются всякими вебпаками сраками цельные приложения. По началу, лучше ваще от этого отказаться. Писать всё ручками. Для js и фильтрации могу посоветовать underscore и аналоги _

https://underscorejs.ru/#template

menangen ★★★★★
()
Ответ на: комментарий от menangen

Он прост. В нем есть то чего нет в React:

  • Двусторонее связывание
  • Компонентная система

И начинать надо с Vue 3.

Тока все таки для новичка лучше начинать не REST

REST - это не про 4 HTTP-метода, а про отсутствие состояния, что необходимо для масштабирования приложения. Это не модные смузихлебы решили от куков отказаться, это бекендописатели архитектуру такую придумали чтобы балансировщиком каким 20 инстансов тормозного питона запустит, и он летал так, что никакие Go не нужны

По началу, лучше ваще от этого отказаться

Нет. Нужно с самого начала делать все правильно, а то получится учился, а чему-то не тому и в итоге переучиваться

rtxtxtrx ★★
()

Libreoffice позволяет подключаться к базе данных и создавать формы для управления БД.

MOPKOBKA ★★★★★
()
Ответ на: комментарий от MOPKOBKA

А еще можно программистом Power Point быть и зарабатывать миллионы… во сне

rtxtxtrx ★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.