All Projects → alexstyl → Memento Calendar

alexstyl / Memento Calendar

Licence: mit
The sweetest calendar for Android

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Memento Calendar

React Router Native Stack
A stack navigation component for react-router-native
Stars: ✭ 171 (-19.34%)
Mutual labels:  transitions
Deepwiki
A lightweight Markdown wiki system in PHP
Stars: ✭ 188 (-11.32%)
Mutual labels:  wiki
Xamarin Forms Page Transitions
Custom page transitions in a Xamarin.Forms App
Stars: ✭ 200 (-5.66%)
Mutual labels:  transitions
Gradlewiki
关于Gradle编译你需要知道的一切
Stars: ✭ 174 (-17.92%)
Mutual labels:  wiki
Simplepresence
An easy and simple way to set your Discord Rich Presence Status through RPC (no token required)
Stars: ✭ 184 (-13.21%)
Mutual labels:  wiki
Cattaz
Realtime collaborative tool which can run custom applications in a Wiki page
Stars: ✭ 191 (-9.91%)
Mutual labels:  wiki
Mininote
📔 A simple Markdown note-taking editor
Stars: ✭ 171 (-19.34%)
Mutual labels:  wiki
Registry
npm registry documentation
Stars: ✭ 202 (-4.72%)
Mutual labels:  wiki
Wiki
A tiny wiki using BoltDB and Blackfriday
Stars: ✭ 185 (-12.74%)
Mutual labels:  wiki
Blog
my blog include some document
Stars: ✭ 200 (-5.66%)
Mutual labels:  wiki
Matterwiki
A simple and beautiful wiki for teams
Stars: ✭ 2,089 (+885.38%)
Mutual labels:  wiki
Wiki
Wikipedia Interface for Node.js
Stars: ✭ 180 (-15.09%)
Mutual labels:  wiki
Boostnote.next
Boost Note is a powerful, lightspeed collaborative workspace for developer teams. Forum (New!): https://github.com/BoostIO/BoostNote-App/discussions
Stars: ✭ 2,682 (+1165.09%)
Mutual labels:  wiki
Stateful
Finite state machine for Go
Stars: ✭ 172 (-18.87%)
Mutual labels:  transitions
Cs Univ Wiki
컴공생을 위한 대학 생활 가이드라인
Stars: ✭ 202 (-4.72%)
Mutual labels:  wiki
Swiftycontacts
A Swift library for Contacts framework.
Stars: ✭ 171 (-19.34%)
Mutual labels:  contacts
Animatable Component
Animate once, use Everywhere! 💫
Stars: ✭ 188 (-11.32%)
Mutual labels:  transitions
Advancedandroid
Android 进阶
Stars: ✭ 2,446 (+1053.77%)
Mutual labels:  wiki
Loco Motionlayout
Demo app for the talk "Do the Loco-MotionLayout" presented at droidcon Italy, droidcon Boston, 360AnDev & droidcon London 2019 along with examples using MotionLayout
Stars: ✭ 201 (-5.19%)
Mutual labels:  transitions
Ontowiki
Semantic data wiki as well as Linked Data publishing engine
Stars: ✭ 192 (-9.43%)
Mutual labels:  wiki

Archived

The repo is now archived and no new commits will take place. Thank for your support and contributions.

Memento Calendar for Android alt text

Memento Calendar is a modern namedays app for Android. This repository contains the source code of Memento Calendar.

You can get started by having a look at the project's wiki. It contains some information about how to get Memento up and running on your machine and other useful info.

This repo is open for PRs and they are more than welcome! Have a look at the wiki page to see how to contribute.

alt text

Project Goal

Memento Calendar is my pet project/playground in which I experiment with various platform features development patterns and share my foundings with the community my foundings via blog posts and talks. Memento started off as a side project app back in 2014 and has been on development on and off. Current goal of the project is to split out the business logic of the app from the app logic so that it could potentially be ported into other platforms with the help of Kotlin.

Modules

The app is split into multiple modules. The business logic of the app can be found in the memento module. There are three other Android Modules:

android_common

This is the shared resources across all Android specific modules. It depends on memento.

android_wear

This is the Android Wear module. It depends on android_common.

android_mobile

This is the Android mobile app module. It depends on android_common.

Architecture

The Model-View-Presenter is used in order to architecture the app.

Presenters are platform agnostic and live in the memento module, in order to be able to be used across all platforms. They contain the core logic of forwarding Models to the Views. It is up for the specific platform component to create a View

Views are responsible displaying information back to the user. For each view there is one interface that lives in the memento module. A view is not to be confused with Android's View classes, Activities or Fragments.

Models contain the minimum amount of information needed to render the information on the screen.

I did a talk in the GDG Android Athens about the structure of Memento Calendar. The talk is in Greek, but the slides contain more information about the structure (see the slides).

License

MIT License

Copyright (c) 2016 Alex Styl

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].