1
0
Fork
You've already forked server
0
No description
  • Go 50.7%
  • Vue 42.9%
  • JavaScript 5.3%
  • SCSS 0.4%
  • CSS 0.2%
  • Other 0.4%
Find a file
Lukas Matt ddf73bb911 Migrate UI from Vue Material to Tailwind CSS
Replace all Vue Material (md-*) components across the frontend with
a modern, responsive Tailwind CSS implementation. All business logic,
API calls, and routing are preserved unchanged.
Components migrated:
- Register.vue: auth form, Composition API, password mismatch validation
- Setting.vue: Untappd sync dialog, correct inject('globalData') usage
- parts/Rating.vue: progress bar + star row, replaced md-progress-bar
- parts/ActionBar.vue: like/comment/reply actions, replaced md-layout
- parts/Checkin.vue: card layout, image fallback, location display
- parts/IndexItem.vue: alternating layout via isEven computed
- Index.vue: hero section, feature rows, CTA button
- User.vue: profile hero, stat counters, badge grid with CSS tooltips,
 loading skeleton, fixed v-html + tooltip coexistence
- parts/Search.vue: custom autocomplete dropdown, keyboard navigation,
 debounced input, Untappd/local toggle
- CreateCheckin.vue: collapsible sections, file inputs, location dialog,
 replaced vue-browser-geolocation with native API
General changes:
- All components converted from Options API to Composition API
- Replaced / this. with inject() and useRouter()
- Replaced Font Awesome and Material icons with inline SVGs
- Replaced moment.js with dayjs (already used in project)
- Added loading spinners, empty states and skeleton placeholders
- Improved accessibility: aria roles, labels, keyboard nav, focus rings
- Fixed interval memory leak in Setting.vue via onUnmounted cleanup
- Fixed badge sort comparator in User.vue (boolean -> numeric)
2026年05月10日 23:37:15 +02:00
activity Send checkin to untappd if requested 2021年04月22日 09:17:29 +02:00
badges Apply workaround for badges 2021年04月20日 21:18:56 +02:00
crypto Add user password reset 2021年04月09日 14:17:54 +02:00
database Fix untappd worker 2021年04月20日 17:01:37 +02:00
handlers Add photo upload to checkin's 2021年04月29日 11:05:38 +02:00
public Vuejs 2021年03月06日 23:18:06 +00:00
src Migrate UI from Vue Material to Tailwind CSS 2026年05月10日 23:37:15 +02:00
vocab_builder Add photo upload to checkin's 2021年04月29日 11:05:38 +02:00
workers Fix rating in untappd worker 2021年04月29日 15:04:25 +02:00
.gitignore Update .gitignore 2021年03月16日 11:46:22 +01:00
babel.config.js Vuejs 2021年03月06日 23:18:06 +00:00
config.ini.example Rename Unmappd to Socialtap 2021年03月26日 22:26:49 +01:00
Dockerfile Fix Docker build and webpack configuration for Vue 3 2026年05月08日 09:09:18 +02:00
go.mod Implement first badge approach 2021年04月20日 10:29:58 +02:00
go.sum Implement first badge approach 2021年04月20日 10:29:58 +02:00
LICENSE Initial commit 2019年07月16日 13:05:52 +02:00
main.go Fix untappd worker 2021年04月20日 17:01:37 +02:00
package.json Migrate UI from Vue Material to Tailwind CSS 2026年05月10日 23:37:15 +02:00
postcss.config.js Refactor the existing vuejs components 2026年05月08日 23:42:40 +02:00
README.md Update README.md 2026年05月08日 22:31:49 +02:00
shell.nix Add nix dependency shell 2026年05月08日 09:17:05 +02:00
tailwind.config.js Refactor the existing vuejs components 2026年05月08日 23:42:40 +02:00
vue.config.js Fix Docker build and webpack configuration for Vue 3 2026年05月08日 09:09:18 +02:00
yarn.lock Refactor the existing vuejs components 2026年05月08日 23:42:40 +02:00

Socialtap - drink socially

Build

Compile assets

yarn install
yarn build

Compile binary

go build -o socialtap

GLIBC

If you have to compile for a certain libc version you can do it by running:

docker run -v $HOME/.golang:/go -v $(pwd):/build --rm -ti golang:buster bash
> cd /build && go build -o socialtap

Docker image

docker build -t socialtap/server:dev .

Installation

Yarn

If used in development yarn serve will not work since the websocket is not considered secure. To fix this in a pure development environment you can disable it in Firefox (about:config):

network.websocket.allowInsecureFromHTTPS = True

Database

For development purposes you can run a local postgres database like this:

docker run -e POSTGRES_PASSWORD=mysecretpassword -e POSTGRES_DB=socialtap -ti postgres

Create the database if not done in the previous step:

create database socialtap;
\c socialtap

Create the database in Postgres and configure authentication according the settings in your config.ini. Then install the following extensions:

Text similarity measurement and index searching based on trigrams

create extension pg_trgm;

Cryptographic functions

create extension pgcrypto;

Done! The application server will create the tables and settings automatically.