How do you get started building your first Nextcloud app? Our beginner’s guide is a valuable resource to better understand how Nextcloud works internally and which pitfalls you should avoid if you want to make sure your app doesn’t break when confronted with real-life use cases.
And now, there’s also Nextcloud Academy. Introduced as part of our Nextcloud Hub 26 Summer release, it contains hands-on courses for beginners as well as more experienced Nextcloud developers that take you from the basics all the way to a finished app and beyond.
There are two parallel tracks that build the same app with different architectures:
The PHP track for building a classic Nextcloud app running inside the server, using controllers, the OCP API, QBMapper, and migrations.
The ExApp track (using Python) for building an external app running as a separate Docker service through AppAPI, using FastAPI, nc_py_api, and its own SQLite/Postgres database.
From environment setup to finished Nextcloud app
The beginner modules require no prior knowledge. Before you start coding, you will be guided through setting up your development environment to make sure everything works as expected down the road.
From there you learn how a Nextcloud app is structured: the manifest that describes it, how requests are routed to your code, and how the app hooks into Nextcloud when it loads.
Next comes the backend, where you write your first endpoints and return data, followed by a database layer so data can be stored, read, and changed. The course then moves to the frontend. You set up a Vite and Vue build, then create the interface in three steps. It uses Nextcloud’s own Vue components, so the app looks and behaves like the rest of Nextcloud.
Finally, you’ll turn the working prototype into a real app. You’ll first make sure each user sees only their own data by identifying the current user and limiting every query to their data. Then you version, sign, and package the app and submit it to the Nextcloud App Store.
You can do all of this in PHP, as a traditional app inside Nextcloud, or in Python, as a separate service connected through AppAPI. The steps and the finished app are the same either way, but the Python route adds a bit more work on verifying incoming requests and deploying with Docker.
More learning tracks to come in the future
At the time of writing, the courses are still in beta. Only the beginner tracks are available, with the intermediate and advanced tracks coming soon. Feedback is very welcome, so if you notice a mistake of find something is unclear, please file an issue on GitHub.
Ready to get started? Then head over to Nextcloud Academy to write your first lines of Nextcloud-native code!
Fruto del trabajo conjunto de nuestro equipo, la comunidad y nuestros partners, Nextcloud Hub 26 Summer aprende de personas reales que utilizan nuestras herramientas a diario. Crea un espacio propio para tu equipo con Nextcloud Teams, organiza tus recuerdos en el nuevo Nextcloud Photos y disfruta de las actualizaciones que pediste en todas las aplicaciones. ¡Sigue leyendo para conocer todos los detalles de nuestra última versión!
Nextcloud Hub offers several types of integrations for AI, from completely self-hosted options to integrations with external services like Open AI. Here's an overview of what you can use and where, and where it stands on our Ethical AI scale.
Nextcloud Hub 25 Otoño facilita la puesta en marcha de una potente colaboración mientras controlas totalmente tus datos. Desde actualizaciones globales de diseño hasta mejoras de usabilidad y rendimiento, descubre nuestra última versión en este blog.
Passionate about data privacy and Nextcloud? We invite you speak at the Nextcloud Community Conference to share your experience, knowledge and news with the community!
For the ninth time, Nextcloud has been nominated for the CloudComputing-Insider Readers’ Choice Award in the category of Cloud Content Management. We’d love to reach the top again! And we’re looking for the support of you and everyone else in our amazing community to get there. Nextcloud as the best Cloud Content Management tool? Only […]
In the Nextcloud 2024 wrap-up, we want to take a moment to celebrate this year's achievements. Join us as we continue to reimagine what’s possible - shaping a world where open source, privacy and connection come together and drive progress for the greater good.
Las organizaciones, grandes y pequeñas, necesitan una forma de garantizar la resiliencia y la soberanía digital de sus operaciones: una alternativa de código abierto que respete la privacidad frente a Teams. Y hoy, presentamos esa solución: Nextcloud Talk.
Nextcloud has been recognized with the World Summit Award Germany that selects and promotes local digital innovation improving society, aiming to contribute to the United Nations' agenda of sustainable development goals.
DIE ZEIT, a prominent German outlet, interviewed Nextcloud’s founder Frank Karlitschek for an article on Microsoft’s anti-competitive behaviour on the European office software market. Read for a recap of the article and the key takeaways.
MagentaCLOUD’s migration to Nextcloud in 2021 resulted in a fully equipped Online Storage with an integrated online office suite that further improves the user experience, flexibility and security for customers.
We bring you a major update to the Nextcloud AI Assistant, plus the news we work with several big hosting providers like IONOS and OVHcloud to bring AI-as-a-Service options to you!
Bechtle and Nextcloud announce today a complete managed collaboration platform for the public sector that requires no tender and can be deployed immediately.
Discover how to make the switch from ownCloud to Nextcloud. Our quick guide provides insights into the migration process, helping you make the transition smoothly.
Today, US-based file sync & share vendor Kiteworks announced their acquisition of ownCloud and Dracoon. Kiteworks points out that their customers now have access to their file-sharing application. It is to be expected they will not maintain 3 similar products, but customers will have to migrate to the US firms’ platform or look for another […]
As part of Schleswig-Holstein's state digitization strategy, the state chancellery has announced they will work with Nextcloud to develop AI for working with government documents. This comes just after we announced the first private AI assistant last weekend with Hub 6. The German state already uses Nextcloud and their AI strategy aligns with our work on ethical, local AI technologies.
Nuestra misión es ayudar a particulares, empresas y organizaciones a alcanzar la soberanía digital y recuperar el control sobre sus datos. Nextcloud Hub 5 supone un enorme paso adelante en la consecución de esta misión, poniendo el poder de la IA en tus manos, de forma que mantengas el control. Nueva versión, nuevas posibilidades Hub […]
Guardamos algunas cookies para contar los visitantes y facilitar el uso del sitio. Esto no sale de nuestro servidor y no es para rastrearte personalmente. Consulta nuestra política de privacidad para obtener más información. Personalización
Cookies utilizadas para guardar los datos introducidos en los formularios, como nombre, correo electrónico, número de teléfono e idioma preferido.
Nombre de la cookie:nc_form_fields
Descripción de la cookie:Recuerda los datos introducidos en los formularios para la próxima vez (nombre, correo electrónico, teléfono e idioma preferido)
Caducidad de la cookie:30 días
Consentir
Nombre de la cookie:nc_utm_parameters
Descripción de la cookie:We use cookies to store UTM parameters from your visit so we can understand how you arrived at our website.
Las cookies estadísticas recopilan información de forma anónima y nos ayudan a comprender cómo utilizan nuestro sitio web nuestros visitantes. Utilizamos Matomo alojado en la nube.
Servicio:Matomo
Descripción de la cookie:
_pk_ses*: Cuenta la primera visita del usuario
_pk_id*: Ayuda a no contar dos veces las visitas.
mtm_cookie_consent: Recuerda que el usuario ha dado su consentimiento para almacenar y utilizar cookies.
Caducidad de la cookie:_pk_ses*: 30 minutos
_pk_id*: 13 meses
mtm_cookie_consent: 30 días