PBN hosting service that installs blogs with 1-click on random servers hosted by big brand hosting providers. It is the fastest, easiest and safest way to host your blog networks.
Non-invasive alternative to corporate MDM and RMM solutions for small businesses that care about security but know it doesn't have to be invasive for their team members.
Gain the benefits of WordPress for blogging and improvements in SEO, while keeping your primary website on your favorite platform.
Mayet offers a comprehensive solution for real-time tracking, advanced analytics, and seamless compliance to ensure the success of your research.
Rankalyzer allows you to see straight through your competitors' SEO strategies and know how they are performing, helping you take impactful SEO action.
Craft premium, branded blog content that connects with your audience and amplifies your business's reach.
A comprehensive database of domains and easy-to-use filters wrapped up in a modern user interface that makes finding domains for your new niche website or PBN blog a breeze.
Niteo House is a perfect place to escape your working life or for time away. If you do need to work while at the villa, both bedrooms have a working desk with an office chair.
Kafkai is a cutting-edge tech based on machine-learning algorithm for writing content. It allows you to generate hundreds of readable, unique articles for cents instead of dollars.
WooCart is managed hosting built exclusively for WooCommerce. It significantly decreases the time you spend on building new stores and simplifies store management and maintenance.
SyncWoo is a plugin that improves your host's staging process. It syncs the data from production to staging, so that no orders or customers are lost when you push staging.
Easy Domain Monitor is a monitoring tool for SEO agencies and freelancers. It monitors for SEO & Social metrics, uptime & speed, blacklists and more.
Indexation check is an automated Google index checker for domains and subpages.
Our first SaaS product. Big Content Search is the first search engine for reusable content. Database with over 128,000 private label articles and 1,000 eBooks.
Big Article Scraper is a web-based article directory scraper. Users can download batches of articles or use it with supported services.
Big Media Scraper is a web service that enriches content with images and videos. Users upload a ZIP of articles and receive enriched articles. It also works with our WP Postly plugin.
WP Review Plugin is a very simple review plugin for products. Instead of complicated templates and hundreds of options, WP Review Plugin simplifies everything to a few clicks.
WP Postly is a simple autoblogging plugin for WordPress. It sources articles from Big Content Search, enriches them with Big Media Scraper and posts them on your blog. It's only available as an upgrade inside Big Content Search.
WP Rewritely is a WordPress plugin for manually rewriting blog posts. Whether after spinning or just correcting posts, WP Rewritely will speed up your rewriting. It was open-sourced and offered for free in October 2015.
URL: https://github.com/ParetoSecurity/sms-slack-v3
First release in: 2022
Technologies Used: ESP32, Python, C++, 3D printing
Title: sms2slack
Summary: sms2slack is a tiny box for a SIM card that receives SMS messages, like 2FA codes, and forwards them to your Slack channel.
First release in: 2022
Technologies Used: Golang, WebAssembly, Cloudflare Workers
Title: AreMyKeysSafe
Summary: AreMyKeysSafe is a simple in-browser tool to check your SSH and GPG public keys. If you have been in the Web space for a number of years, there's a good chance that you are still using some SSH keys you generated 13 years ago. They might be considered unsafe by today's standards. By entering your GitHub or GitLab public handle the app will let you know.
URL: https://github.com/teamniteo/salarycalc
First release in: 2019
Technologies Used: Python, Elm, Nix
Title: Niteo Salary Calculator
Summary: A web app to calculate a salary of a Niteo employee. Calculations are done using the prevailing market rates taken from Salary.com for different positions and the affordability ratio applied on top of it.
URL: https://github.com/teamniteo/nix-docker-base
First release in: 2020
Technologies Used: Docker, Nix
Title: Nix Docker base images for fast and minimal builds
Summary: This project automatically generates Docker images for nixpkgs channels. So the images contains a prefetched tarball of each versions. This allows Nix builds that pin nixpkgs to that version to start quickly, without having to first fetch and unpack a tarball.
URL: https://github.com/marketplace/actions/pull-request-status-action
First release in: 2020
Technologies Used: Python
Title: Pull Request Status Action
Summary: A Github Action that creates a Status for the Pull Request. It creates status with required state, description and target_url.
First release in: 2019
Technologies Used: Python, Docker, GitHub Action
Title: Heroku Review Apps deployment status
Summary: We developed a All-in-one GitHub Action which continuously monitors the entire deployment cycle of a Review App when a Pull Request is created and updates the status based on the Review App status.
URL: https://circleci.com/developer/orbs/orb/niteo/check-untracked-changes
First release in: 2019
Technologies Used: YAML, Bash, CircleCI
Title: Check Un-tracked Changes Orb
Summary: An orb to test if any un-tracked changes(to git commit) are present in the given path. This is useful to test if any auto-formatters(like black, isort) have produced changes during CI validation.
URL: https://github.com/teamniteo/pyramid_celery
First release in: 2019
Technologies Used: Pyramid, Python
Title: Pyramid Celery
Summary: This package allows you to use pyramid .ini files to configure celery and have your pyramid configuration inside celery tasks. We contributed support for Python 3.
URL: https://github.com/Pylons/pyramid_openapi3
First release in: 2018
Technologies Used: Pyramid, Python, OpenAPI
Title: OpenAPI 3 integration for Pyramid
Summary: Validate Pyramid views against an OpenAPI 3.0 document and provides a API Explorer. For demo check out the YouTube video.
URL: https://github.com/teamniteo/rebuild-pages
First release in: 2015
Technologies Used: PHP
Title: Rebuild Pages
Summary: Rebuild Pages is a WordPress plugin which can be used to rebuild URL's using a CSV downloaded via Majestic.com by selecting a minimum amount of backlinks for a URL.
URL: https://github.com/teamniteo/pyramid_deferred_sqla
First release in: 2018
Technologies Used: Pyramid, Python, SQLAlchemy
Title: SQLAlchemy for Pyramid
Summary: Opinionated SQLAlchemy + Pyramid integration with deferred configuration in mind.
URL: https://github.com/teamniteo/pyramid_redis
First release in: 2018
Technologies Used: Pyramid, Python
Title: Redis for Pyramid
Summary: Integrate Redis with a Pyramid web application.
URL: https://pypi.python.org/pypi/pyramid-mixpanel
First release in: 2018
Technologies Used: Pyramid, Python
Title: Mixpanel for Pyramid
Summary: Integrates Pyramid app with Mixpanel to learn who your users are and how they are using your app.
URL: https://pypi.python.org/pypi/pyramid-straw
First release in: 2017
Technologies Used: Pyramid, SQLAlchemy
Title: Database troubleshooting tool for Pyramid apps
Summary: The first tool you should use to analyze what's going on with your database, when developing pyramid apps. We developed it when Easy Blog Networks scaled up fast and our database was locking out. To this day, pyramid_straw is part of our regular toolbox.
URL: https://pypi.python.org/pypi/collective.impersonate
First release in: 2017
Technologies Used: Python, Plone
Title: Allow administrator to impersonate another user (useful for debugging).
Summary: Install into your Plone site and head to http://ip/ploneinstance/@@impersonate. This is a remake and modernization of one of our most popular Plone add-ons, the niteoweb.loginas. We deliberately moved away from using the niteoweb. namespace to encourage more participation from the collective Plone community.
URL: https://pypi.python.org/pypi/pyramid_redirect
First release in: 2017
Technologies Used: Pyramid
Title: A Pyramid add-on for redirecting URLs
Summary: pyramid_redirect is a small extension for Pyramid to redirect URLs before further processing takes place. Especially useful in environments where you cannot control the reverse proxy in front of your app, such as on Heroku.
URL: https://pypi.python.org/pypi/pyramid_force_https
First release in: 2017
Technologies Used: Pyramid
Title: A Pyramid add-on for forcing HTTPS
Summary: pyramid_force_https is a tween for Pyramid to redirect all HTTP requests to HTTPS to make sure your users are protected. Especially useful in environments where you cannot control the reverse proxy in front of your app, such as on Heroku.
URL: https://pypi.python.org/pypi/pyramid_heroku
First release in: 2017
Technologies Used: Pyramid, Heroku
Title: Helpers for running Pyramid on Heroku
Summary: pyramid_heroku is a collection of tweens and helpers to successfully run Pyramid on Heroku.
It provides the following:
URL: https://github.com/teamniteo/handbook
First release in: 2017
Technologies Used: Transparency
Title: The Niteo Handbook
For the last decade, we have been accumulating the knowledge and practicalities of running an Open Source business within our walled-off intranet. At our 10th Anniversary Party we realized that it was time that we made this valuable information public with the intent of helping people in similar positions.
This Handbook offers us an opportunity to clarify what Niteo is and how we operate. It allows greater transparency to our partners, potential new team members, and the wider Open Source community.
URL: https://pypi.python.org/pypi/pyramid_letsencrypt
First release in: 2016
Technologies Used: Pyramid
Title: Easy validation of Let's Encrypt SSLs
Summary: pyramid_letsencrypt provides an easy way to host Let’s Encrypt domain validation content in your Pyramid project, with just a config entry.
This plugin is needed for deployment scenarios where you do not have a reverse proxy (think Nginx and the lot) in front of your Pyramid app to serve static content. One of such scenarios is hosting your Pyramid app on Heroku.
URL: https://wordpress.org/plugins/passive-indexation-check/
First release in: 2016
Technologies Used: WordPress
Title: Passive Indexation Check WordPress plugin
Summary: Passive Indexation Check is a WordPress plugin that notifies you when googlebot stops visiting your blog for a certain period of time, indicating your blog was deindexed from Google.
URL: https://pypi.python.org/pypi/pyramid_favicon
First release in: 2016
Technologies Used: Pyramid
Title: A Pyramid add-on for handling favicons
Summary: pyramid_favicon is an add-on for handling favicons in your Pyramid project. Normally, favicons are located on the root directory of a web site. However, with this add-on, it is possible to specify a different location for your favicon via a custom config setting.
URL: https://github.com/teamniteo/wprewritely
First release in: 2015
Technologies Used: Wordpress
Title: WP Rewritely Wordpress plugin
Summary: WP Rewritely is a WordPress plugin for manually rewriting blog posts. Whether after spinning or just correcting posts, WP Rewritely will speed up your rewriting. It was Open Sourced and offered for free in October 2015.
URL: https://wordpress.org/plugins/spiderblocker/
First release in: 2015
Technologies Used: WordPress
Title: WordPress plugin for blocking bots.
Summary: Spider Blocker will block most common bots that consume bandwidth and slow down your server. It will accomplish this by using Apache .htaccess file to minimize impact on your website. It will also hide itself from external scanner. Only works with Apache server and mod_rewrite enabled.
As of this writing, this plugin is installed on over 100,000 WordPress blogs.
URL: https://wordpress.org/plugins/integration-between-groovehq-and-cf7/
First release in: 2015
Technologies Used: WordPress
Title: GrooveHQ Integration for Contact Form 7
Summary: Plugin allows you to choose contact forms that send requests directly to GrooveHQ inbox instead to email.
URL: https://github.com/teamniteo/heroku-buildpack-buildout
First release in: 2014
Technologies Used: Bash, Buildout, Heroku
Title: Heroku buildpack: Buildout
Summary: A Heroku buildpack for Python apps, powered by Buildout.
URL: https://github.com/dz0ny/heroku-buildpack-lftp
First release in: 2014
Technologies Used: Bash, Heroku
Title: Heroku buildpack: lftp
Summary: A Heroku buildpack for adding lftp to your application.
URL: https://github.com/dz0ny/heroku-buildpack-forego
First release in: 2014
Technologies Used: Bash, Heroku
Title: Heroku buildpack: forego
Summary: A Heroku buildpack for adding forego to your application.
URL: https://github.com/teamniteo/heroku-buildpack-unzip
First release in: 2014
Technologies Used: Bash, Heroku
Title: Heroku buildpack: unzip
Summary: A Heroku buildpack for adding unzip to your application.
URL: https://github.com/teamniteo/baculanix
First release in: 2014
Technologies Used: nix, Bacula
Title: Nix configuration for Bacula server
Summary: Testing out NixOS by doing a configuration for a Bacula backup server
URL: https://pypi.python.org/pypi/ucg
First release in: 2013
Technologies Used: Python
Title: Python bindings for UCG API
Summary: UCG is an online service for spinning text (synonym substitution) that creates unique version(s) of existing text. This package provides a way to easily interact with UCG API.
URL: https://pypi.python.org/pypi/wordai
First release in: 2013
Technologies Used: Python
Title: Python bindings for WordAi API
Summary: WordAi is an online service for spinning text (synonym substitution) that creates unique version(s) of existing text. This package provides a way to easily interact with WordAi API.
URL: https://pypi.python.org/pypi/slc.permissiondump
First release in: 2013
Technologies Used: Python, Plone
Title: Visualize a tree of local roles assigned on Plone items.
Summary: Walk the Plone portal and dump the list of local roles for each item. Then go through the dump and generate a nice HTML visualization of the tree of items with their assigned local roles.
Development of this package was done as part of our consulting gig for Syslab.com.
URL: https://pypi.python.org/pypi/chimprewriter
First release in: 2013
Technologies Used: Python, Plone
Title: Python bindings for ChimpRewriter API
Summary: Chimp Rewriter is an online service for spinning text (synonym substitution) that creates unique version(s) of existing text. This package provides a way to easily interact with ChimpRewriter API.
URL: https://pypi.python.org/pypi/niteoweb.aweber
First release in: 2013
Technologies Used: Python, Plone
Title: Aweber API integration for Plone.
Summary: A Plone add-on that integrates AWeber email autoresponder system with Plone. It allows subscribing new members programmatically or manually via the Plone Control Panel.
URL: https://pypi.python.org/pypi/iwwb.eventlist
First release in: 2012
Technologies Used: Python, Plone
Title: Provides a Plone interface for accessing the event search of InfoWeb Weiterbildung.
Summary: This package provides a Plone interface to the event search offered by InfoWeb Weiterbildung. It makes use of their web interfaces described at http://www.iwwb.de/wss/sucheIWWBServer.php See IWWB credits for more information about the content provider.
This package will be useful mostly to German users, as it explicitly targets a German site.
An example of where this package is used (with further UI customizations) can be seen on the German site gefaehrdungsbeurteilung.de.
Development of this package was done as part of our consulting gig for Syslab.com.
URL: https://pypi.python.org/pypi/spinchimp
First release in: 2012
Technologies Used: Python
Title: Python bindings for SpinChimp API
Summary: Spin Chimp is an online service for spinning text (synonym substitution) that creates unique version(s) of existing text. This package provides a way to easily interact with SpinChimp API.
URL: https://pypi.python.org/pypi/spinnerchief
First release in: 2012
Technologies Used: Python
Title: Python bindings for SpinnerChief API
Summary: Spinner Chief is an online service for spinning text (synonym substitution) that creates unique version(s) of existing text. This package provides a way to easily interact with SpinnerChief API. Usage requires an account, get one here and an api key which you get by registering a developer account.
URL: https://pypi.python.org/pypi/thebestspinner
First release in: 2012
Technologies Used: Python
Title: Python bindings for TheBestSpinner API
Summary: The Best Spinner is an online service for spinning text (synonym substitution) that creates unique version(s) of existing text. This package provides a way to easily interact with The Best Spinner API.
URL: http://pypi.python.org/pypi/collective.listusers
First release in: 2012
Technologies Used: Python, Plone
Title: A search form for listing Plone users.
Summary Solves easy task: Query users by group and/or attribute and export as vcard/csv.
Development of this package was done as part of our consulting gig for Syslab.com.
URL: http://pypi.python.org/pypi/spinrewriter
First release in: 2012
Technologies Used: Python
Summary: Python bindings for SpinRewriter API.
Spin Rewriter is an online service for spinning text (synonym substitution) that creates unique version(s) of existing text. This package provides a way to easily interact with SpinRewriter API.
URL: https://pypi.python.org/pypi/bobtemplates.niteoweb
First release in: 2012
Technologies Used: Python, mr.bob, Pyramid, Plone, Buildout
Title: Templates for quickly bootstrapping best-practice Plone & Python projects.
Summary: bobtemplates.niteoweb provides mr.bob templates to generate packages for Plone and Pyramid projects. Templates are designed to be reusable by others, individuals and teams. All templates have tests for verifying which files and folders were generated, along with tests that run on the actual generated package.
Plone part superseded by https://pypi.python.org/pypi/bobtemplates.plone.
URL: https://pypi.python.org/pypi/niteoweb.ipn.core
First release in: 2012
Technologies Used: Python, Plone
Title: Support for Instant Payment Notifications in Plone.
Summary: A Plone add-on package that acts as a base for supporting different Instant Payment Notification providers (such as PayPal, JVZoo, Click2Sell, etc.). You probably do not want to use this package on its own, but rather use one of its sub-packages.
URL: https://pypi.python.org/pypi/niteoweb.ipn.jvzoo
First release in: 2012
Technologies Used: Python, Plone
Title: A Plone add-on that integrates JVZoo digital products retailer system with Plone to enable paid memberships on your site.
Summary: This Plone add-on allows site owners to run a paid-membership site based on Plone. JVZoo is used for payment processing and membership renewals.
URL: https://pypi.python.org/pypi/niteoweb.jvzoo
First release in: 2012
Technologies Used: Python, Plone
Title: A Plone add-on that integrates JVZoo digital products retailer system with Plone for paid memberships.
Summary: This Plone add-on allows site owners to run a paid-membership site based on Plone. JVZoo is used for payment processing and membership renewals.
Superseded by https://pypi.org/project/niteoweb.ipn.jvzoo
URL: https://github.com/teamniteo/rtd_buildout
First release in: 2012
Technologies Used: Python, Buildout
Title: Buildout for internally running ReadTheDocs
Summary: Buildout for internally running ReadTheDocs. This is an alternative installation procedure. For people who are not using virtualenv on their servers.
URL: https://pypi.python.org/pypi/hexagonit.portletstyle
First release in: 2011
Technologies Used: Python, Plone
Title: Assign a CSS style to a portlet
Summary: hexagonit.portletstyle is a Plone 4.x add-on that allows you to assign a CSS style to a portlet. You can chose from a list of pre-defined (configurable through Plone Control Panel) classes.
Development of this package was done as part of our consulting gig for Hexagon IT Oy.
URL: https://pypi.python.org/pypi/hexagonit.virtualgallery
First release in: 2011
Technologies Used: Python, Plone, Flash
Title: Virtual 3D image gallery for Plone
Summary: hexagonit.virtualgallery is a Plone add-on that renders a Flash-based 3D virtual gallery.
Development of this package was done as part of our consulting gig for Hexagon IT Oy.
URL: http://pypi.python.org/pypi/collective.table
First release in: 2011
Technologies Used: Plone, Python
Summary: Easy storage of tabular data.
The collective.table add-on is a replacement for the "store equipment lists, book loans, etc. in Excel files and upload to Plone". It's a list of items where members can add/edit columns and rows and of course data. By default, collective.table stores its data in the ZODB, however storage is pluggable and it's easy to write storage adapters to have data stored in SQL, LDAP, etc.
collective.table is based on DataTables and jEditable jQuery plugins.
The project was Nejc's Google Summer of Code assignment.
URL: https://pypi.python.org/pypi/niteoweb.fabfile
First release in: 2011
Technologies Used: Python, Fabric, Buildout
Title: A bunch of Fabric commands we use all the time.
Summary: This package contains a selection of Fabric command we at NiteoWeb use all the time. By sharing them online we hope to save someone some time researching how certain Plone-oriented tasks are performed with Fabric. Commands contain some hardcoded internal stuff, so they are not really usable out-of-the-box, more so as a point of reference. If there is interest, we’ll rewrite them to be more reusable.
Superseded by https://pypi.python.org/pypi/bobtemplates.niteoweb.
URL: https://pypi.python.org/pypi/niteoweb.click2sell
First release in: 2010
Technologies Used: Python, Plone
Title: Integrates click2sell digital products retailer system with Plone for paid memberships.
Summary: This Plone add-on allows site owners to run a paid-membership site based on Plone. Click2sell is used for payment processing and membership renewals.
URL: https://pypi.python.org/pypi/niteoweb.clickbank
First release in: 2010
Technologies Used: Python, Plone
Title: Integrates ClickBank digital products retailer system with Plone for paid memberships.
Summary: This Plone add-on allows site owners to run a paid-membership site based on Plone. Clickbank is used for payment processing and membership renewals.
URL: https://pypi.python.org/pypi/niteoweb.downloadcounter/
First release in: 2010
Technologies Used: Python, Plone
Title: Counts how many time was a File content type downloaded and displays this number on File view page.
Summary: niteoweb.downloadcounter is a simple Plone add-on. It counts how many times has a default File content type been downloaded. It displays this value in a viewlet below File’s title.
URL: https://pypi.python.org/pypi/niteoweb.transmogrifier.simpleusage
First release in: 2010
Technologies Used: Python, Plone, Transmogrifier
Title: A simple example of how to use collective.transmogrifier.
Summary: This package shows you how to use collective.transmogrifier to import news items into Plone.
By default, it uses dummy values that are hard-coded in the product itself to create some News Items, so you can see how to even use transmogrifier.
The main idea is that you can use this product as a skeleton for migrating content from other systems to Plone, since you only need to pass in correct data instead of hard-coded dummy values.
URL: https://pypi.python.org/pypi/multitrac
First release in: 2010
Technologies Used: Python, Pyramid, Trac
Title: A pyramid application to manage multiple Trac installations
Summary: We had several Trac instances and we wanted a one page overview of tickets across all of them. So we built a Pyramid app to help visualize our projects better.
URL: http://pypi.python.org/pypi/FireInFolders
First release in: 2009
Technologies Used: Python
Summary: Command line utility which executes commands in multiple folders.
This tool was created for use with buildout and svn externals. Buildout populates src/ folder with products that need svn management. This egg makes it easier to do management: "fire_in_folders svn up"
URL: https://pypi.python.org/pypi/niteoweb.loginas
First release in: 2009
Technologies Used: Python, Plone
Title: Allow administrator to login as another user (useful for debugging).
Summary: Install through quickinstaller and head to
http://ip/ploneinstance/@@login-as.
One of our most popular Plone add-ons.
URL: http://pypi.python.org/pypi/niteoweb.windmill
First release in: 2009
Technologies Used: Plone, Python, Windmill
Summary: An OpenSource Third Party product for Plone CMS enabling testing a Plone site with the Windmill testing platform.
The niteoweb.windmill package extends Plone's FunctionalTestCase to provide support for running Windmill tests. This is achieved by adding an additional test layer, which starts a single-threaded ZServer instance alongside the Windmill server.
Windmill supports most of modern browser. The controller API can be found at https://github.com/windmill/windmill/wiki/Controller-API.
For more details, see https://github.com/windmill/windmill.
URL: https://github.com/teamniteo/celery
First contributed in: 2020
Technologies Used: Python
Title: Celery
Summary: A task queue runner for Python. We added support for Python to an older version.
URL: https://github.com/teamniteo/elm-spa-example
First contributed in: 2019
Technologies Used: ELM
Title: ELM Sigle Page App
Summary: Fully fledged fullstack application built with Elm including CRUD operations, authentication, routing, pagination, and more. We contributed examples and added mobile support.
URL: https://github.com/teamniteo/repoze.workflow
First contribution in: 2018
Technologies Used: Pyramid, Python, SQLAlchemy
Title: repoze.workflow
Summary: repoze.workflow is a state machine and associated configuration system useful for workflow-like applications. We contributed Python 3 compatibility fixes.
URL: https://pypi.python.org/pypi/pyramid_raven
First contribution in: 2016
Technologies Used: Pyramid, Raven
Title: Raven integration for Pyramid
Summary: pyramid_raven integrates the raven python client and raven-js with a Pyramid web application. It provides a configured raven client at request.raven and a pyramid_layout panel called raven-js.
We contributed Python 3 compatibility fixes and better Sentry DSN discovery.
URL: https://github.com/Pylons/trypyramid.com
First contribution in: 2016
Technologies Used: webpack
Title: Pyramid presentation website https://trypyramid.com
Summary: https://trypyramid.com is a presentation website for the Pyramid Python Web framework. During DragonSprint.com we contributed several fixes and updates.
URL: https://github.com/Pylons/pylonsproject.org
First contribution in: 2016
Technologies Used: webpack
Title: Pylons Project presentation website https://pylonsproject.org
Summary: pylonsproject.org is a presentation website for the umbrella organization that takes care of a bunch of Web-related Python frameworks and libraries, Pyramid being the most prominent one. We helped push the site online during and after the DragonSprint.com.
URL: https://pypi.python.org/pypi/deform
First contribution in: 2016
Technologies Used: Pyramid
Title: Deform form library
Summary: Deform is a popular form library used primarily by the Pyramid folks. We use it in almost all our projects and have contributed fixes and a CSV de/serialization support for TextAreaWidget.
URL: http://libcloud.apache.org/
First contribution in: 2015
Technologies Used: Python
Title: Apache Libcloud is a Python library for dealing with "the Cloud"
Summary: Libcloud is a popular and widely adopted library in the Python ecosystem. We contributed support for several new DNS providers.
URL: https://github.com/cooncesean/mixpanel-query-py
First contribution in: 2015
Technologies Used: Python
Title: The Python interface to fetch data from Mixpanel.
Summary: The Python interface to fetch data from Mixpanel via Mixpanel's Data Query API. Note, this differs from the official Python binding which only provides an interface to send data to Mixpanel.
We contributed a few fixes.
First contribution in: 2014
Technologies Used: NodeJS
Title: A modern, high performance, flexible SMTP server.
Summary: Haraka is an open source SMTP server written in Node.js which provides extremely high performance coupled with a flexible plugin system allowing Javascript programmers full access to change the behavior of the server.
We contributed a few minor fixes.
URL: https://pypi.python.org/pypi/Products.OneTimeTokenPAS
First contribution in: 2013
Technologies Used: Python, Plone
Title: Login using a token that can be only used once.
Summary: The One Time Token PAS allows users to login using a special token. The token is generated and can only be used one. This allows members to login without supplying their username and password. You can send an e-mail with the special login url, so the member can access the portal easily.
Development of this Plone add-on was inspired by our add-on niteoweb.loginas. We contributed a few features and patches.
URL: https://pypi.python.org/pypi/archetypes.referencebrowserwidget
First contribution in: 2013
Technologies Used: Python, Plone, Javascript
Title: A referencebrowser implementation for Archetypes
Summary: This is an implementation of referencebrowser widget. It provides a widget used for Archetypes reference-fields. The widget can be used on its own or as a dropin replacement of the ATReferenceBrowserWidget in Plone 3 and is included in Plone >= 4. Unlike the ATReferenceBrowserWidget, archetypes.refencebrowserwidget uses an overlay instead of a popup to display the referencebrowser.
We contributed a few fixes.
URL: https://docs.plone.org/plone.api
First contribution in: 2012
Technologies Used: Python, Plone
Title: A Plone API.
Summary: The plone.api is an elegant and simple API, built for humans wishing to develop with Plone.
It comes with cookbook-like documentation and step-by-step instructions for doing common development tasks in Plone. Recipes try to assume the user does not have extensive knowledge about Plone internals. The intention of this package is to provide clear API methods for Plone functionality which may be confusing or difficult to access. As the underlying code improves some API methods may be deprecated and the documentation here will be updated to show how to use the improved code (even if it means not using plone.api).
Some parts of the documentation do not use plone.api methods directly, but simply provide guidance on achieving a task using Plone's internal API. For example, using the portal catalog (see 'Find content objects').
The intention is to cover 20% of the tasks any Plone developer does 80% of the time. By keeping everything in one place, the API stays introspectable and discoverable, important aspects of being Pythonic.
For several years, Nejc led the development of this popular Plone library that inspired many conference talks and beers given. Over the years more than 50 developers from all over the worlds contributed to the library. Development was taken over by the Plone Framework Team in 2014.
URL: https://pypi.python.org/pypi/collective.recipe.supervisor
First contribution in: 2011
Technologies Used: Python, Supervisord, Buildout.
Title: A buildout recipe to install supervisor.
Summary: collective.recipe.supervisor is a popular package for configuring Supervisord with Buildout. We contributed a few minor features and bug fixes.
Development of this package was done as part of our consulting gig for Hexagon IT oy.
URL: https://pypi.python.org/pypi/collective.uploadify
First contribution in: 2010
Technologies Used: Python, Plone, Javascript
Title: Multi File Upload for Plone
Summary: collective.recipe.backup was a popular package for doing multiple-file uploads in Plone. We contributed an option to give users the possibility to customize their upload queue size.
URL: https://pypi.python.org/pypi/collective.recipe.backup
First contribution in: 2009
Technologies Used: Python, Plone
Title: Sensible defaults for Plone backups.
Summary: collective.recipe.backup is a popular package for doing Plone backups. We contributed a script for easily restoring snapshots and an option to archive blog backups.
enquos is the first comprehensive system to track, analyze, organize, and securely share nutrition, fitness, and health data, while providing tools for optimizing healthy choices.
We had a consulting gig to help them refactor their codebase to be more readable and friendly to developers, along with upping the test coverage percentage.
Syslab.com is a Munich based software development and consulting company founded in 1998. They create powerful web-based applications and content management systems for organizations, government bodies and multi-national companies.
As part of a consulting gig for them we helped them on major projects for their clients including The European Agency for Safety and Health at Work, Denso Auto, and Star Alliance.
Six Feet Up is a company that develops, hosts and supports sophisticated enterprise content management and collaborative intranet projects.
We were consultants on one of the projects for their major customer.
Hexagon IT Oy was a Helsinki-based turnkey web service solutions provider. They provided services that include both development, maintenance and support.
We helped them migrate their main publishing platform from Plone 2.5 to Plone 4.
Consulting and training for deploying Plone sites to cloud servers.
Client wanted to migrate their sites from conventional shared Plone hosting solution to affordable dedicated servers. Cloud servers were the best choice based on what they wanted. We prepared a detailed guide on how to setup a CentOS cloud server for running Plone, how to migrate data to the server and how to handle domains and DNS. We gave additional input for their specific use-case and helped them achieve a successful migration.
The client was looking for a well-rounded introductory course in some of the commonly used technologies in the IT world.
The client wanted us to introduce four of his employees to the basics of databases, web applications, network infrastructure and general IT-related security. The course was carried out in tho parts.
In the first part we explained the general structure of a relational database (tables, relations, indexes). After the theory was explained attendees did some interactive exercises. With the help of the web interface phpMyAdmin we created a new database from scratch, built its schema and then performed some data queries on it. After that we learned how to export database to a file and how to restore database from the same file in case a server crashes. On top of that we briefly discussed how web applications use backend databases to provide dynamic content to website visitors.
In the second part we learned how to make a web application "visible" on the internet - one must open a hosting account and register a domain. We explained how DNS records need to be updated and how the DNS lookups and network routing are performed. At the end we looked at some of the most common IT security mistakes companies do and gave practical advice on how to avoid them.
We've been hired to "crowd-source" the development of a logo for new company Agrologistika.
We've done project specifications, published the contest on one of the main crowdsourcing websites for design, submitted feedback to designers and in the end showed the client the best picks.
Balanced Scorecards is a strategic performance management tool, which is used to measure efficiency of an organization not only in the financial sense, but also from the perspective of the so-called soft categories (employee happiness, company's public image, etc.). To demonstrate the usefulness of the BSC approach in assessing organizations, our client needed a prototype application for his research work. We developed this prototype using PHP and MySQL.
With the prototype application one was able to define a new organization and its internal hierarchical structure (various departments within the organization). After the structure was defined, a user could create many different types of scorecards and attach them to various departments. Based on these scorecards an application would then calculate the organization's score starting at the bottom of the department hierarchy. A user could then easily see, which departments do not perform as well as expected (and why) based on the criteria predefined by scorecards. And locating a problem is the first step towards solving it.
First release in: 2010
Technologies Used: Python, Plone, Buildout, Nginx, RichDocument, Supervisord
Summary: LifeInLjubljana.si is a portal that helps Erasmus students coming to Ljubljana to easily find a room and some company.
The website has three levels of users: Anonymous, Staff and Administrators. Anonymous are able to view information on the site. Staff members can manage default Plone content on the site (pages, images, etc.) alongside also managing Flats (adding and editing rooms, ratings, etc. ).
The main part of the site is the list of available flats/beds with an advanced search. Visitors can do a sorted search on several characteristics of a flat/bed.
When a booking is confirmed, Staff members enter this information on the site so visitors can always see updated information about when each room is free.
There is also integration with Google Maps. ŠOU provides a Google Map with Faculties represented as pins on the map. Also each room is represented as a pin on the map. The coordinates of there pins are then manually copied to product code, namely in config.py. The system automatically calculates distances from a Flat to the faculty. Search result sorting based on distance from a chosen faculty is also enabled.
When Erasmus students leaves Ljubljana, he is asked to provide rating of the room (from 1 to 5) and a short comment on the rating. Upon receiving this information (via email, etc.) Staff members enter this on the website.
Site news are implemented like a simple blog.
Forum is implemented by integrating Nabble mailing lists into the site.
This web system is currently deployed on a medium dedicated Cloud server to ensure a smooth experience for users and staff members.
First release in: 2010
Technologies Used: Nginx, CentOS, iptables, Munin, password managing
Summary: ŠOU needed a simple website to promote student demonstrations in Slovenia.
In the recent years they had many problems with attacks on similar sites so the highest priority was to ensure high availability.
We configured a stripped down CentOS instance, manually compiled Nginx with custom header strings and added some booby-traps for script-kiddies. Linux's default firewall, iptables, was used to deny access to non-authorized persons.
Access to the content of the website was protected with a personal key that each of the content managers received on a USB stick.
During the 4 week period before the demonstrations, the server didn't have even a single minute of downtime and have repelled all security breach attempts.
First release in: 2010
Technologies Used: WordPress, PHP, MySQL
Summary: MIROR provides logistics and civil engineering services. They needed an affordable and simple presentation website.
We used the latest WordPress version with a few add-ons and a basic theme.
First release in: 2010
Technologies Used: WordPress, PHP, MySQL
Summary: Zavod mladi podjetnik offers special prices for accounting services for it's members. This site gives detailed information of what customers get for the price and why it's a good choice.
We used the latest WordPress version with a few add-ons and a basic theme.
First release in: 2010
Technologies Used: Plone, Python, Buildout, Supervisord, CacheFu
Summary: A presentation website for a NLP and leadership trainer Marjan Racnik.
The base for the project is default Plone CMS. We built a customized theme from a design mockup made in Photoshop. Then we added basic structure of the site and modified Plone's site settings accordingly. We added a private section with materials for participants of Marjan's trainings. Marjan can post new trainings to the site and display an RSS feed from his WordPress blog.
The web system is currently deployed on a cloud server. Since it's a low-traffic site it can run on a small server instance.
First release in: 2010
Technologies Used: WordPress, PHP, MySQL
Summary: Moj fit is a fitness and recreation center. They needed a basic presentation website since the previous one was over 7 years old.
We used the latest WordPress version with a few addons and a premium theme.
First release in: 2010
Technologies Used: Python, Plone, Buildout, Nginx, RichDocument, Supervisord
Summary: A presentation website for a company delivering dynamic lubricating systems for industries ranging from steel, paper, wood, construction and food industry.
This is a basic Plone project. We strived to keep Plone as default as possible to ensure a smooth upgrade when applicable. Most of the work went into theming and organizing the initial structure of the site along with private document repository workflows for EMSA Board members.
This website was deployed on a small dedicated Cloud server until client took over it's hosting.
First release in: 2009
Technologies Used: Python, Plone, Buildout, Nginx, SSL, Supervisord, Sphinx, SMS dispatch module
Summary: Izterjevalec ("collector" in Slovenian) is a system for automatic notification about payments due. A client enters its debtors' data and the system automatically sends emails and SMS to remind the debtor to pay the invoice. The service leverages Company On Net™ verification process and practically eliminates fraudulent debt collections.
We used Plone as a basis for this project since we anticipated a multi-level user and permission model.
We built custom content types based upon default Plone content types and bound them to custom workflows. The user interface was kept similar to what Plone has by default. We added a special module for communicating with our SMS dispatch center via HTTP protocol.
We used crontab to run hourly tasks. On each full hour, a special script goes through the whole database and finds content that need SMS notification for. Then it generates the SMS text out of several pre-defined templates (based on the severity of delay) and information entered by customers. SMS is then relayed to the SMS dispatch center where it gets sent to the actual mobile device.
First release in: 2009
Technologies Used: Plone, Python, Buildout, Supervisord
Summary: A presentation website for the Next Generation Mobile Services workshop organized by Local Committee Ljubljana of Electrical Engineering Students European Association - EESTEC.
Next Generation Mobile Services workshop is an international workshop held in 2008 in Ljubljana, where students from all around Europe learn about IMS. IMS, or IP Multimedia Subsystem, is an approach to Next Generation Networking. IMS-based services will enable all-IP person-to-person and person-to-content communications in a variety of modes - including voice, text, pictures and video, or any combination of these - in a highly personalized way.
Since the project was to be done on a minimal budget we took the freely available Plone theme called 'Nautica Theme' so no extensive work was needed for the design. What was left to do was create the basic layout of the site, set correct values in Site Settings and add some members with permissions to manage content.
The web system was deployed on our servers as part of our sponsorship program with EESTEC LC Ljubljana.
First release in: 2009
Technologies Used: WordPress, MySQL, PHP
Summary: The client was looking for an inexpensive presentation website for their company.
We used the latest WordPress version with a few addons and a basic theme.
First release in: 2009
Technologies Used: plain HTML/CSS, Nginx
Summary: A classic sales website, taking inspiration from sales letters. It's a long 1-page website with pitch, quotes, testimonials and frequent call-to-action.
This is a simple HTML/CSS only page to ensure ultra-fast loading and low resources consumption.
Since it's just a bunch of HTML/CSS files and images, we deployed this site on a general purpose server, alongside other similar projects and files.
First release in: 2009
Technologies Used: Python, Plone, PloneFormGen, RichDocument, Plone Wilkin Theme
Summary: A presentation website for a Slovenian based accounting firm RE plus.
This is a basic Plone project. We strived to keep Plone as default as possible to ensure a smooth upgrade when applicable. Most of the work went into theming and organizing the initial structure of the site.
This website is currently deployed on a dedicated Cloud server. Since it's a low-traffic site it can run on the smallest and cheapest server instance.
First release in: 2009
Technologies Used: Python, Plone, Buildout, Supervisord, CacheFu
Summary: A presentation website for a company specializing in producing Energy Performance Certificates and research in this area.
The base for the project is default Plone CMS system and the Plone Nautica Theme. We customized the theme to suit the client's needs and fit with it's brand. Then we added basic structure of the site and modified Plone's site settings accordingly. Lastly we added Zinter's employees as members of the site and assigned them permissions for managing content.
The website was deployed on our virtual servers until it was taken offline by the client.
First release in: 2009
Technologies Used: Plone, Python, Buildout, Intense Simplicity, qPloneCaptchas, Plone Comments, Supervisord
Summary: A presentation website for a successful Slovenian nordic ski jumping competitor, Jernej Damjan.
We deployed a basic Plone CMS system, installed the Intense Simplicity Plone theme (which we customized a bit), added base structure to the site and modified site settings to comply with the needs. Lastly we a Jernej as a member with permissions to manage content, so he can personally add and edit news, articles and multimedia on his site.
The web system was deployed on our virtual servers. Since it was a low-traffic site it could run on the smallest and cheapest server instance.
First release in: 2009
Technologies Used: Plone, Python, Buildout, Supervisord, CacheFu
Summary: A presentation website for a consortium of two Slovenian based companies RRC d.d. and ENEKOM d.o.o.
The base for the project is default Plone CMS system and the Plone Nautica Theme. We customized the theme to suit the client's needs and fit with it's brand. Then we added basic structure of the site and modified Plone's site settings accordingly. Lastly we added Sinergija3's employees as members of the site and assigned them permissions for managing content.
The web system was deployed on our virtual servers until hosting was taken over by the client.
First release in: 2008
Technologies Used: Plone, Python, Buildout, Supervisord, Plone Nautica Theme
Summary: A website for educating Slovenian internet population how to protect themselves on the net. The site hosts news and articles from different areas of IT security. It has a section dedicated for users and one dedicated for companies.
Plone is perfect for projects like this. We took World Plone Day theme and customized it to suit the client's needs. We then setup the base site structure for news and articles. We then added members and assigned them permissions for managing content.
Client used Aweber email marketing software. We created a custom portlet for displaying a registration form for aweber's mailing list and styled it to fit into the site well.
The web system is currently deployed on our virtual servers.
First release in: 2007
Technologies Used: Plone, Python
Summary: A presentation website for a group of 7 yearly publications for Slovenian youngsters.
The base for the project is default Plone CMS system. The design was based on a graphical template from a major template-reselling site. We customized it a bit to align it with Plone's layout. We stored all customized HTML and CSS in a classic Plone theme product. We also installed some third-party Plone add-ons such as RichDocument, PloneSurvey and PlonePopoll to suit the client's needs.
The idea was that each of the 7 yearly publications has a dedicated site, but all sites must be visually coherent enough that it's immediately apparent that they are related. So we chose a bit non-standard design with leaflets and made 7 different color variations. Now each site uses basically the same theme products, but with different color scheme.
Client decided to host the site themselves. They have been up and running for more than three years now.
First release in: 2007
Technologies Used: Plone, Python, Buildout, Nginx, Supervisord, RichDocument
Summary: A presentation website for a company delivering dynamic lubricating systems for industries ranging from steel, paper, wood, construction and food industry.
The basis for this project was default Plone. We installed RichDocument add-on for Plone to enable attachments support for default Plone's Document content type. PloneTrueGallery add-on is used to deliver "Web 2.0"-ish gallery for their gallery.
The design was based on a graphical template from a major template-reselling site. We customized it a bit to align it with Plone's layout. We stored all customized HTML and CSS in a classic Plone theme product.
Employees can use the site in a normal Plone fashion: Adding new folders and subfolders, adding news and documents, managing gallery, copy/pasting content from one part of the site to another, undo-ing mistaken actions, etc.
The system now has more than 3 years of uptime, running on a cost-effective small-sized virtual server.
First release in: 2007
Technologies Used: Plone, SSL, Python
Summary: A custom built Customer Relationship Manager for a company dealing with online skiing holidays booking.
The basis for this project was our own Plone-based internal CRM system which was one our first internal projects. We took what we learned and built a customized CRM system for our client.
The client used our CRM for keeping track of accommodation partners (hotels, apartments, chalets, etc.). The system enabled the client to add upcoming interactions (calls, emails, meetings, etc. ) for every single partner and assign these interactions to employees. Employees then had a "worklist" view for listing interactions that need to be handled today, tomorrow, in the next week and so on. All interactions were stored for future reference. Accommodation partners (hotels, apartments, etc.) were sorted by country and ski-resort.
All content objects were built on top of default Plone content types enabling content actions like cut/copy/paste, history and undo.
The system had more than 2 years of uptime, running on a cost-effective small-sized virtual server even though it stored thousands of different content objects (partners, interaction, etc.).
Access to the application was protected with an SSL certificate to ensure safe data transfer.
First release in: 2006 (ongoing development)
Technologies Used: Python, Plone, Buildout, CacheFu, PloneFormGen, Varnish, RichDocument, Supervisord, CentOS, phpBB
Summary: MladiPodjetnik.si is a portal for supporting entrepreneurship among students and other youngsters. It is a growing community with daily news, articles and events. All information, help and events is free of charge. The funding for the organization is based on advertising revenue and grants.
The project started as a hobby back in 2006. The first release was a Plone 2.5 based website with default content types and a freely available Plone theme. After a few months, the community started growing and we had to release the second version, which was still Plone 2.5 based but had a customized theme and more finely tuned roles and permissions.
Work on third version of the site began in late 2008 when the old site couldn't cope anymore with increasing traffic, content and modification requests. We based the new version on Plone 3.1 and heavily customized the default content types to suit the client's needs. The design was done completely in-house: from structural design, to graphical draft to the finally installable Plone theme product. The site's front page was made from scratch to squeeze in as much information as possible but still keep it user friendly.
Since advertising is the main income for the client the layout had to be designed in a way to allow efficient and customizable ads management. We used OpenX as a backend for ads management. Client also uses Aweber email marketing software. We created a custom portlet for displaying a registration form for aweber's mailing list and styled it to fit into the site well.
Workflows were also customized and new roles added to suit the client's publication process.
In 2011 the Plone 3.1 version was migrated to Plone 4.0 and the design was updated and rewritten in Diazo.
The website is currently running on top of Plone 4.2, contains in excess of 10.000 content objects. It receives more than 40.000 unique visitors per month. This meant that we had to finely tune the delivery of content to visitors to keep server costs down. MladiPodjetnik.si runs on a 2GB virtual server.
First release in: 2006
Technologies Used: Plone, Python, Buildout, Supervisord, LinguaPlone
Summary: A presentation website with internal document storage system for Local Committee Ljubljana of Electrical Engineering Students European Association - EESTEC.
Nejc Zupan, our lead developer, joined the IT Team of LC Ljubljana back in 2006. Together with other members they developed the site using Plone 2.5. They used Pyboom Plone theme and customized it to suit EESTEC's needs. Then they've set up the site structure, assigned permissions and added members.
Currently the system holds all information a visitor needs about LC Ljubljana. Member's of LC Ljubljana can edit all content on the page and add new news items and events.
There is also a private section where internal documents are stored. This way, information such as members' mobile phone numbers or home addresses are always at hand.
The website is bi-lingual as some content is translated to English (the main language being Slovenian). This was achieved with integrating the great LinguaPlone add-on.
The web system was deployed on our servers as part of our sponsorship program with EESTEC LC Ljubljana.