Coder Social home page Coder Social logo

ilyakangin / hanayo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from osuakatsuki/hanayo

0.0 0.0 0.0 87.46 MB

The server's public-facing frontend

Home Page: https://akatsuki.pw

License: GNU Affero General Public License v3.0

Shell 0.02% JavaScript 48.06% Go 8.37% CSS 1.44% HTML 7.00% Less 26.52% SCSS 8.60%

hanayo's Introduction

Hanayo v1.8.6 - Modified for the osu! private server: Atoka

This repository has a mirror here. The original repo is still here.

Stuff that works now!

Stuff that we got working now!

  • Clans
  • Linking Discord (for donors only)
  • Authorized Applications

Stuff that may not work.

We'll update this repository when we get the below functions working properly.

  • Two Factor Authentication

Sorry for the broken stuff, Atoka

To fellow developers: this is not how you do it!

The biggest flaw of hanayo are that when I set out to create it, I wanted to create a template system that:

  • Created a handler by simply having the file "be there"
  • Could fetch the data it needed on its own, often from the Ripple API
  • Had the actual Go code be as little as possible

This was not immediately evident to me, a Go beginner, but what I did there was basically make Go be PHP.

The biggest lesson I learned on how to properly do templates, was learning to use Vue. Yes, Vue can be used for the frontend and not really for server-rendered stuff, but even just learning how to do stuff with it can help you understand what a template is actually supposed to be in order to be maintainable.

The key concepts and insights for me where:

  • Separating clearly code and markup, making the template declarative and keeping as little code in the template
  • A template should be purely functional. Its mere creation should not generate side effects, nor should it be dependent on things that are not its precise inputs: for a given input there is a specific output.
  • The concept of component as a single self-contained entity which is the same wherever you use it is very powerful.
  • Once a template/component starts becoming too big, split it into more components.

But don't stop here. Actually making a project using Vue helps you to understand this much more easily than using mere words. Go ahead and build something, even if just to play around!

How to install this?

  • Download it: go get -u github.com/osuatoka/hanayo
  • Go to it: cd $GOPATH/src/zxq.co/ripple/hanayo
  • Install dependencies: ./dep ensure <-- Run this in $GOPATH/src/zxq.co/ripple/hanayo
  • Build it: go build .
  • Run it: go run .
  • Edit configuration: nano hanayo.conf

If you don't know how to do any of this, you aren't qualified.

hanayo's People

Contributors

thehowl avatar infernalfire72 avatar lenforiee avatar cmyui avatar tsunyoku avatar iptq avatar xnyo avatar mempler avatar yo-ru avatar varkaria avatar philenst avatar atl128 avatar emilysunpy avatar cursordance avatar 7ez avatar avail avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.