Skip to content

floriank/saltmine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

![Gitter](https://badges.gitter.im/Join Chat.svg)

Build status

Saltmine

Saltmine

This is Saltmine - an attempt to modularize Redmine and in particular the OpenProject fork of it. While being able to fork OpenProject again, I will not consider this as the technical goal should be to provide a modularized system which enforces a microservice architecture from the beginning.

Saltmine will be written in GoLang - its frontend will be provided by a different repository.

Initial goals

These are the first milesstones

  • Provide an API for tickets and projects (CRUD operations, connect Ticket and Project)
  • Provide a form of documentation for the API

Development Setup

  • Setup Go properly - currently we use the latest stable. There are currently some problems with go-1.5rc1 recgarding goconvey
  • Install godep:
go get -u github.com/tools/godep
  • Clone the repo:
# You can and should use a fork
git clone git@github.com:florian/saltmine $GOPATH/src/github.com/floriank/saltmine
  • Restore the dependencies
# You can and should use a fork
cd $GOPATH/src/github.com/floriank/saltmine && godep restore
  • there is a Makefile included for common tasks
  • (Optional) If you want to use more fancy testing, go ahead and install goconvey:
go get -u github.com/smartystreets/goconvey

It's compatible with the go test command, however, it will start a server and you can visit its (very beautiful) testrunner here.

It's also included in the Godeps, however, it dioes not yet properly work (for me at least), i.e. it picks up the tests for the Godeps, which is not desirable.

NOTE: We use git flow for branching. You can do this manually if you want to, but usage of the tool is encouraged.

Private repo?

This is private until there is something presentable.

Long term goals

  • provide a fully open sourced modularized project collaboration tool based on services
  • provides an easily deployable solution via containers
  • strong integration:
    • Github/GitLab
    • Wunderlist
    • Evernote
    • BitBucket
    • CI systems
  • provide a migration script from Redmine/OpenProject to Saltmine

Even longer term goals

This is stuff I miss from Redmine and OP which would be neat if we can have that:

  • Full WAI compliance from the start with the support of a component model in the frontend
  • Fuzzy menu to quickly change to another part of the application
  • Watchable objects (not only tickets)
  • mentioning people - and using Markdown in tickets FFS
  • project sharing between instances
  • cross-project pull requests (from a single ticket, merge related PRs of multiple repositories at the same time)

Notes on migration

Migration would be a killer feature to provide for users to switch to Saltmine. There are some points discussed as of yet:

  • Migration would only be partially possible, as not all features are compatible
  • Textile content would be converted to Markdown (pandoc can do this)

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published