Skip to content
/ flat Public

Flat is an Open-source web-based collaborative music score editor.

License

Notifications You must be signed in to change notification settings

xuanvu/flat

Repository files navigation

Flat

Flat is an Open-source web-based collaborative music score editor.

Tested with Node v0.11 (https://travis-ci.org/FlatIO/flat). Works on Linux, MacOS and Windows.

NPM

Build Status Dependencies

Readme Contents

# Installation
$ npm install flat.io && cd node_modules/flat.io
$ npm install -g grunt-cli && grunt

You can configure the application using the configurations files stored in /config (node-config).

# Project technologies

You might want to build assets using grunt-fontsmish and grunt-svgmin (npm packages are available).

Client side

The client side is designed into three AngularJS applications: the authentication, the dashboard and the editor.

The editor uses fermata too, the library code is shared between the client and the server (designed to render PDF scores in the future).

# REST API

Will be added soon, you can show the specifications using a swagger-ui (e.g. dev.flat.io).

# Database architecture

Models used in the project (see /schemas/index.js for more details).

User

  • username
  • email
  • password: The password in bcrypt
  • registrationDate

Follow

  • follower
  • followed
  • date

Score

  • sid: The storage identitifer (the git repository name)
  • title: The score title
  • public: True if the score is public
  • userId

ScoreCollaborator

The different collaborators of a score.

  • aclWrite: True if the user has write rights
  • aclAdmin: True if the user has admin rights
  • scoreId
  • userId

News

The activity of the users.

  • event: The event name (a i18next key)
  • parameters: A JSON of the parameters of the news string (e.g. a title, score, user, ...)
  • date
  • userId

NewsFeed

The news feed of the users.

  • newsId
  • userId
# The team Flat is MSc project of a french CS school, [Epitech](http://www.epitech.eu/) and is an [Epitech Innovative Project](https://eip.epitech.eu). Here is our team:
  • @gierschv : Project manager and lead developer ;
  • @rannoup : Database Architect, developper ;
  • @cyrilcoutelier: Fermata / editor developer
  • @corentingurtner: Fermata / editor developer
  • @vbouchaud: developer
# Contributors # License

Flat is freely distributable under the terms of the GPLv3 license.

Flat
Copyright (C) 2013 Flat team <contact@flat.io>

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

About

Flat is an Open-source web-based collaborative music score editor.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published