This is an old revision of the document!
MEDLab hosts its own software in order to participate in the free/open-source software (FLOSS) commons, and in order to protect our practices from surveillance-based business models. We are seeking to build a vanguard stack against digital colonialism.
What it is: Cloudron is a tool created by a small business that makes it easier to deploy and manage multiple open FLOSS tools on a server. We have a relationship with the company and they provide excellent support. It sits in the background and isn't really user-facing.
How it works: Cloudron automatically updates our apps and backs up their data. We don't need to worry about it too much. It is through Cloudron that we create accounts that can be used on the other apps we use, as it manages accounts centrally. Our Cloudron system is hosted on a DigitalOcean droplet.
What it is: This handbook! DokuWiki is a simple FLOSS wiki system that uses simple text files rather than a fancy database. It is hosted on Cloudron.
How it works: DokuWiki uses the same user account system as other apps on the Cloudron system. All MEDLab team members have edit access; Nathan has admin access.
What it is: GitLab is an open-source code collaboration platform, similar to GitHub. We mainly use GitLab for this purpose, but occasionally it makes sense to use GitHub instead, because it is more widely used by others.
How it works: Create an account on GitHub.com, and Nathan can grant you access to relevant projects.
What it is: GitLab is an open-source code collaboration platform, similar to GitHub. It is self-hostable on Cloudron, but it is resource-intensive, so we currently use the commercial instance, which is currently free for us. In addition to code hosting, we use it for some Web projects, such as CommunityRule, which is deployed through GitLab using Jekyll.
How it works: Create an account on GitLab.com, and Nathan can grant you access to relevant projects. Here are some basic docs on how GitLab and git in general work.
How to use it: Simply copy the “template” from an earlier newsletter, update the content, and send it to email@example.com. Nathan is the admin and all posts must be manually approved.
At some point, we should convert the email system to Mailtrain, available on Cloudron, or the university's newsletter system.
What it is: NextCloud is a FLOSS platform for file-hosting and collaboration that is heavily extensible through plugins. We host it on Cloudron and use it to manage all our internal files and documents. It is also integrated with Collabora, a collaborative document editor.
How it works: Any MEDLab research fellows should be able to access our filesystem with their accounts. It works much like Google Docs. You can edit Mircosoft and OpenDocument office file formats (.docx, .odt, .pptx, .xlsx, etc.) online using the Collabora editor, but this is a bit clunky and slow. It might be easier to download such files to your computer, edit locally, and then re-upload. A faster and simpler collaborative editing tool, though less powerful, is NextCloud's built-in Markdown editor. To use it, create a “New text document” using the “+” button at the top, and create a file that ends with .md (as is the default). This is a good way to keep notes in simple rich text, though it is not a fully featured word processor.
Please use discretion in sharing access to files and folders. All files are available to MEDLab team members, but it may not be appropriate to share them externally. Please ask Nathan if you are uncertain about what would be appropriate.
NextCloud plugins give us a variety of tools, which you can access through the menu bar at the top of the Web interface. These include:
- Deck - A kanban-style tool for managing workflows. We use this mainly to manage logistics around grant reporting, but you can create your own deck for a project you're working on if it would help you with task management.
- Polls - Enables multiple choice polls, including Doodle-style time polls for meetings. The interface takes some getting used to.
- Forms - Enables the creation of forms akin to Google Forms. It's a bit buggy, and the data export format doesn't make it easy to extract data usefully. Hopefully this will improve with time. For forms that will acquire large amounts of input, it's better to use the form tool on our colorado.edu website.
- Element - This is our chat. See information on Matrix below.
You can access NextCloud through the Web interface or through mobile apps. Note that the NextCloud mobile app really only includes the Files tool, while the Web interface includes access to all the tools.
What it is: Matrix is a FLOSS communications protocol intended to be a highly secure backend for chat, email, social media, and other applications. It is still early-stage, but it a very promising project, and it has already been adopted by several European governments seeking to reduce their dependence on US-based software companies. Rather than relying on centralized companies, it enables both federated and peer-to-peer connections. Our own instance is currently not federated with the wider Matrix network, as we only use it internally, but we could add this functionality if we see fit. We use Element, which is the flagship Matrix client; Element used to be called “Riot,” which is why that's in the URL on NextCloud.
How it works: Access it through the Element client from within NextCloud, or using a Matrix-compatible mobile app (such as the one also called Element). The server is hosted on Cloudron at matrix.medlab.host (which you only need to know if you're logging in through a mobile client; the Web client already knows this). When first logging in, it will ask you to create a security key, which is a long series of characters. Keep that someplace safe. Hopefully you won't need to use it very often. Log in with the same credentials you use for NextCloud.
Element does not support threaded discussions, but you can reply to others' posts. Use lots of reaction emojis! If you want to send an email notification to everyone in the room, include
@room in your message. You can also notify individuals with
Tiny Tiny RSS
What it is: A manager for RSS and other syndication feeds. Useful for curating news, journal publications, and more.
How it works: Anyone with a
medlab.host account can log in and use it. Here's a basic workflow for creating a feed (say, of journals you want to follow):
- Click the three-horizontal-line “hamburger” menu at the top-right. Choose “Subscribe to feed.”
- Find the RSS feed for the journal you want to subscribe to on the journal's website. Usually this will be marked with a logo that looks like this. If it works correctly, you should see recent articles from that journal appear in Tiny Tiny RSS.
- Go back to the hamburger menu and choose “Preferences,” and then click the “Feeds” tab at the top. Under the “Categories” drop-down, choose “Add category,” and call it “Journals” or whatever you want.
- Exit preferences, and right/command-click the name of the feed you created on the left sidebar. Place it in the “Journals” category.
- In the left sidebar, click on the category name, “Journals.” Now you can see all the articles for all the feeds you add to this category. If you want to read them outside this app, you can add them to any RSS reader (I use Feeder on Android) by clicking the little orange feed icon at the top next to the name “Journals.” That will give you a URL you can share.
What it is: This is our main social-media account. It's not terribly active, but it's useful at times.
How it works: Nathan controls the account and shares it via Tweetdeck with anyone who is doing promotional work for MEDLab.
- Basic information about MEDLab projects and personnel
- Event pages and registration forms
- Blog posts on our work
How it works: Currently, only Nathan has admin access to the website.