Education, Python, Services, Solution, Technologies, Web Development
language-learning platform LingUppEducation, Python, Services, Solution, Technologies, Web Development
language-learning platform LingUpp
The backstory of LingUpp
Victoria Collins came up with the idea of LingUpp ― a language exchange app ― when she moved to Brussels and started learning French and giving English lessons. She realized that speaking was one of the hardest parts of learning a foreign language and thought that having a language exchange partner was the best way to practice. So Victoria decided to build an app that would make it easier for language learners to find suitable language partners. She came to SATINA to turn her idea into a reality.
We created a web app called LingUpp that helps users find conversation partners with whom to practice speaking a foreign language either face-to-face or online. To make learning even more effective, LingUpp provides useful content in the form of articles, grammar tips, and conversation guides.
User RolesLanguage learners
Language learners are LingUpp users who want to improve their language skills and share knowledge with other language learners.Chief admin
The chief admin has full permissions and can manage all content and users.Content admin
The content admin can manage only the contents of training materials.Designed light and content-focused UI
We created a design that’s clear, intuitive, and accessible while focusing on functionality.
We opted for three main colors: white, blue, and green. To accentuate key parts of the UI (active tabs, in-app notifications, checkboxes, input text), we used light green, pink, yellow, light blue, and a blue gradient.
Victoria had already designed a logo before she came to us. As for fonts, we opted for Poppins, as it’s well-balanced, easy to read in big paragraphs, and looks nice in headlines and titles.A web app that matches language learners
LingUpp is a progressive web app, meaning it looks and behaves very much like a native app and works on any device: mobile, desktop, or tablet. Because we developed LingUpp as a progressive web app, we were able to deliver an app-like experience to users by providing features such as push notifications and offline mode. We also achieved smooth performance: the app responds to user interactions quickly, without jerky animations, transitions, and scrolling.SKU: n/a
Healthcare, Python, Services, Solution, Technologies, Web Development
Meddy Healthcare platform
Haris Aghadi, the CEO of Meddy.co, was looking into booking and scheduling software development integrated with the Meddy.co database. A database of hospitals and doctors in Qatar, Dubai, and Bahrain. Through the website, patients can book appointments with medical specialists who provide various healthcare services. The finished appointment scheduling and management system, which is integrated with the Meddy.co database, allows hospital administrators to schedule appointments for patients with their chosen specialists, thus providing a higher level of patient care and better hospital management. The platform also lets patients view doctors’ schedules and book appointments directly through the Meddy.co website.
The importance of proper management in healthcare is undeniable. The way hospitals maintain their inside operations directly influences the quality of care they provide to their patients. Scheduling platforms such as the one we developed for Meddy.co allow hospitals to eliminate discrepancies, facilitate better time management for their staff, and make medical appointments comfortable and convenient for everyone.
Achievements and plans
Meddy started off as a course project. But just over three years since they launched, they had attracted more than 2,000 doctors and facilitated over 50,000 visits. In 2017, Meddy raised $560,000 in a Pre Series A funding. In 2019, Meddy was able to raise $2.5 million during the Series A funding stage. In late 2019, Meddy was the biggest player of this kind in Qatar. The year before, they presented their platform to a larger audience by expanding it to the United Arab Emirates (UAE). What’s more, Haris Aghadi announced plans to continue expanding to more countries. In the future, they plan to make Meddy available across all countries in the Gulf Cooperation Council (GCC).
If you’re interested in more information about Meddy’s funding, read:Hospital administrator
Administrators can create and manage work schedules of hospital staff. They’re able to work with multiple hospitals via a convenient filtering system.Hospital receptionist
Hospital receptionists can set and edit appointments as well as control appointment statuses (finished, canceled, etc.).Doctor
Doctors can create profiles indicating their experience and can choose the time and date for appointments.Patient
Patients can search for doctors by filtering by specialization, insurance, treatment, and more. They can also book appointments with doctors directly, call doctors, and leave reviews with ratings. Patients can tie their profiles to their phone numbers to let basic information be pulled from the database automatically.Designed the UI/UX
When we started working on the Meddy.co scheduling app, there was already a simple booking system in place that let patients fill in their phone number and get a call from a hospital receptionist. We needed to work with this existing architecture. Thus, when making improvements, it was vital that the changes we introduced were subtle.
For the UI, our main task was to design the dashboard. Using the existing Meddy.co color palette and style, we created a minimalist, simple, and clear design with a couple of neat colorful illustrations.
As with our other projects, the first thing we did was selected several of the most important screens (weekly calendar view, login page, and time shift setup) and designed them. After getting our client’s approval, we were able to create a graphical user interface (GUI) kit containing all chosen design elements: color palette, typography, buttons, inputs, drop-down lists, checkboxes, and so on along with their states (default, hover, disable, selected, etc.). With the GUI kit in place, we quickly finished designing the rest of the app’s pages.Defined the server architecture
When building the Django server for Meddy.co, our goal was to provide smooth appointment management across all hospitals and countries. Using the Django REST Framework, the server provides access to the application’s feature set.
For the application to operate properly, the dashboard needs to receive data from the Meddy.co API, which gives access to lists of registered doctors, hospitals, and receptionists. For this, we used CoreAPI, which receives data from the Meddy.co database, validates it, and then sends it back to the Django server after converting it to the proper format.
Because sending many requests to the main website takes quite a lot of time, we used a Redis cache to decrease the number of requests and make everything work faster.Developed the frontend
By implementing the latest version of Angular, we made the application flexible and easy to extend. To make sure that each separate page would only be loaded on demand, we implemented Lazy Loading. For data control, we used Ngrx based on the Redux architecture, which uses RxJS to provide the full power of reactive programming.
In Meddy.co, patients can tie their profiles to their phone numbers. After doing so, they don’t need to answer the same questions every time they schedule an appointment as basic information is pulled from the database automatically. This feature is especially comfortable for families, as it allows a parent to be registered under the same phone number as their children. When making an appointment, administrators can type in a client’s phone number and choose a patient associated with that account from a drop-down menu.
The application allows hospital receptionists to manage staff schedules by setting appointments, editing appointments, and controlling appointment statuses (finished, cancelled, etc.).
The application displays doctors’ schedules visually in an aesthetically pleasing way, allowing both patients and hospital administrators to comfortably monitor staff availability.
With the help of a multilevel Working Period – Working Days – Working Hours structure, we gave administrators the ability to create and manage work schedules of hospital staff.
As administrators are able to work with multiple hospitals, we introduced a filtration system so that they can choose one facility at a time and work only with doctors and patients registered there, thus eliminating potential confusion.SKU: n/a
Python Development service
We choose Python when it comes to building custom feature-rich web solutions, taking advantage of its mature libraries and using external packages for time-critical tasks where circumstances so require.
We leverage the power of Python frameworks, including Django, Pyramid, Zope, Flask and many more, to draw on their immerse ready-made functionality for fast delivery of a functional and expandable prototype.
CUSTOMIZATION & UPGRADE
Our Python engineers upgrade 3rd party Python solutions to better adapt them to the needs or preferences of your business, enhance their functionality and give measurable results altogether.
SATINA offers rescue services for projects where technical debt obstructs business flows, refactoring and redesigning Python-based solutions or transpiling code to languages that run natively at higher speeds.
ADVANCED WEB APPLICATIONS
Our Python engineers apply their extensive hands-on expertise and contemporary best practices to build enterprise-grade web applications, leveraging Flask, Python, Zope and Pyramid to solve whatever functionality challenges your business idea and requirements entail.
COMPLEX BACKEND SYSTEMS
Here at SATINA, we choose Python when it comes to developing large-scale backend systems for web applications whose server side logic is in dire need of faster performance, large amounts of addressable memory, and continuous or long-running background processes.
SECURE AND SCALE YOUR ENTERPRISE
We take security seriously, especially in high-risk environments where inputs are unpredictable and sensitive data is at stake. When crafting your application, we utilize OWASP Python Security empowered with our proprietary modifications and bundled with PyCrypto, M2Crypto or other libraries to deliver hardened web solutions which are more resilient to attacks and manipulations.
Scaling with Python is more than just possible: it’s a pattern. Depending on your environment we use Cpython, PyPy or Jython to run the interpreter loop and maximize simplicity and consistency, thus, making for a very predictable runtime and lending Python to smart horizontal scalability, with caching, indexing and database query factoring being all a matter of course.
START UP PYTHON WITH SATINA
Faster Time to Market
Relying on concise, clear syntax and a powerful standard library, Python is an excellent dynamic language for simple to complex solutions that require faster time-to-market. We opt for Python to deliver custom business-critical applications, while proceeding with development rapidly and ensuring that further maintenance and support is straightforward and swift.
Quick MVP Delivery
Given a large pool of 3rd party components, Python is our tool of choice for the delivery of high-quality minimum viable products to cost-effectively test your idea against a real user base. Our expert Python team is ready to articulate your competitive edge and deliver a portion of value to provide you with early ROI and an ability to learn the market quickly.
AND REV UP THE GOOGLE APP ENGINE
SATINA delivers intermediate and advanced web and mobile Python applications that enjoy high scalability with Google App Engine. We utilize this flagship of Google’s Cloud computing services to host your Python app within environments that scale automatically with your traffic, thus, minimizing upfront costs and accounting for unexpected increases in loads.
Your Python application is split into individually addressable modules, each with its own scaling configuration.
We connect your app to a scalable cloud datastore, powered by queries, transactions, and data modeling with the ndb library.
We use Cloud SQL for Python app’s relational databases for higher performance and storage capacity at a lower cost.
SATINA deploys applications to Google infrastructure which provides for easier manageability, inspection and monitoring.
DEDICATED PYTHON TEAM
Our dedicated Python team services provide for quick deployment of a large IT project and arrangement of efficient and reliable support for ongoing projects. SATINA has a large talent pool to organize a custom dedicated team for an extended period of time which can easily be integrated with your in-house team or work as a separate extension to your business:
Prescreening of each team member
Complete control over the team structure (involvement / replacement / withdrawal)
Working time adjustment for your time zone
Ready to use IT infrastructure
Rapid team scaling/involvement of specific subject matter experts on an ad hoc basis
Adoption of process and methodologies upon needSKU: n/a
E-commerce, Mobile Application Development, Python, Services, Solution, Technologies
Snaapy App connects businesses with clientsE-commerce, Mobile Application Development, Python, Services, Solution, Technologies
Snaapy App connects businesses with clients
The founder of Snaapy asked us to create a platform for promoting small and medium-sized offline businesses – from hair salons and barbershops to car rental agencies, to pet care services.
We needed to create both web and mobile applications as well as a comprehensive admin panel. This client-oriented system would let users book appointments with service providers for flexible or fixed timeslots according to their needs. Clients would also be able to leave comments and rate businesses.
According to Louis Columbus, the Forbes contributor, small and medium-sized enterprises (SMEs) should implement mobile solutions. Mobile marketplace development allows a business to connect to their customer base.
Service booking platforms such as Snaapy handle appointments made by clients while equipping businesses with enterprise resource planning (ERP) functionality to monitor their employees’ workloads, manage appointments and payments. The Snaapy platform gives insights into a business’s customer base, reveals consumer habits, shows appointment histories, and uncovers general needs of clients, all while accumulating valuable data.Business admin
The business admin can create business accounts with work details and portfolios and can manage all processes within those accounts, such as monitoring employee workloads and managing appointments and payments. The admin can also promote services on the platform and get notifications about all events.Receptionist
This is an optional role. Receptionists can manage service providers and appointments in their branches and are responsible for downtime and vacations of service providers.Service provider
Service providers can manage their work schedules and the services they offer. They can also check appointments, get notifications, and plan their downtime and vacations.Customer
Customers can create profiles, check businesses in their cities using categories, and book appointments with service providers by choosing a time slot. Customers can leave comments and rate businesses. They also can pay through the platform
Clients can instantly book an appointment with a service provider at a time that suits them. They can even indicate their address if they want the service provider to come to them and can confirm their bookings using the app.
Clients can discover businesses in their city on a map with pins.
Businesses can be filtered by category, subcategory, or name. There’s also an option to sort by rating and location. Sorting by location and the Nearest to Me function works in a regular browser.
Snaapy is a marketplace where service providers can create profiles that include detailed descriptions of services they offer, pictures, and hours of operation as well as list all branch locations. Businesses can also respond to comments from clients.
Snaapy is flexible, allowing service providers to set custom schedules. Even the trickiest schedules can be handled thanks to recurrence rules. Each business can decide whether clients can pick a specific provider when scheduling. Clients can always choose the service they would like. Offering the possibility of choosing is optional on the part of businesses.
The booking system is complex, allowing businesses to set schedules for multiple branches and allowing service providers to list their unique services. Each branch is responsible for setting its own hours of operation. Businesses need to indicate what services they offer, how long it takes to deliver each service, and the price for services. This information applies to the whole business, not just to one branch. Each service provider is assigned to a list of services they provide, which allows businesses to fine-tune their schedules. The system also allows businesses to manage sick leave, days off, breaks, and vacations.
Clients can choose from a variety of payment options within the app, including credit card, KNET, and cash. The great advantage of this system is that it helps businesses manage and track all financial transactions.
Clients can rate businesses after a service has been delivered. Ratings are shown on the preview page.
Businesses can place ads in Snaapy to promote their services. Snaapy is a promotional platform linked to the booking system. For each successful order, Snaapy charges the business a small commission. In case of a no-show, the commission is returned.
There are three business roles in the app: the administrator, who can access every part of the platform; the receptionist, who can manage all appointments; and service providers, who can manage their own appointments.SKU: n/a