tulir / lindeb

A simple link manager with powerful search
https://lindeb.mau.lu
GNU General Public License v3.0
3 stars 2 forks source link
elasticsearch firefox-extension golang mariadb openapi react rest-api

lindeb - mau\Lu Link Database

A simple link manager with powerful search. Built using Go, React, Elasticsearch and MariaDB.

The official deployment is available at lindeb.mau.lu.

Course info

This is also a database exercise project.

For the duration of the exercise project course, the repository will contain some useless files, such as this README section, the course documentation (also in Google Docs), SQL query files and the following links to some React components:

API

Technologies

Backend

The backend uses Go with gorilla/mux for routing and go-sql-driver/mysql as the database driver. It has a REST-like JSON API that is documented with an OpenAPI document. The specification file is available here and a graphical API explorer is available here.

MariaDB is the recommended database management system, but anything compatible with MySQL should work. The search system uses Elasticsearch as its backend. Since the backend is written in Go, the server running the backend does not need any language-specific runtimes. However, a DBMS instance and an Elasticsearch instance must be available.

Frontend

The frontend uses React, Sass and modern JavaScript syntax. Support for old browsers is not guaranteed. The latest version of Firefox is recommended, but Chrome will work too.

Objective

The goal of this project is to create an easy-to-use system for saving links and searching saved links.

Scope

Extended scope

Out of scope