diff --git a/assets/static/beeware.css b/assets/static/beeware.css index b26ec162f0..ada15b7e84 100644 --- a/assets/static/beeware.css +++ b/assets/static/beeware.css @@ -156,7 +156,7 @@ } .navbar-collapse { - background: #000; + background-color: #343a40; padding-top: 0.75em; } @@ -353,6 +353,19 @@ blockquote { position: relative; } +/* Fix for separators in header menu when display is 760px-and-smaller wide */ +@media (max-width: 760px) { + .navbar-collapse li { + border-bottom: 1px solid #666; + } + .navbar-collapse .header-button li.nav-item { + border-bottom: 0 + } + .navbar-collapse .header-button { + border-bottom: 1px solid #666; + } +} + /*---------------------------------------------------- Homepage styles --------------------------------------------------- */ @@ -369,6 +382,26 @@ blockquote { margin: 2rem 0; } +/*---------------------------------------------------- + Project Showcase and Important Category Styles + --------------------------------------------------- */ +.showcase { + margin: 2vh; + font-size: larger; +} + +.important-category { + margin: 2vh; + padding-bottom: 1rem; +} + +.important-description { + margin-bottom: 1.2rem; +} + +.important-projects { + padding-left: 1rem; +} /*---------------------------------------------------- Sticky footer styles @@ -479,6 +512,7 @@ body { .project img { margin-bottom: 2rem; + float: left; } /*---------------------------------------------------- diff --git a/content/contact/contents+ar.lr b/content/about/contact/contents+ar.lr similarity index 100% rename from content/contact/contents+ar.lr rename to content/about/contact/contents+ar.lr diff --git a/content/contact/contents+de.lr b/content/about/contact/contents+de.lr similarity index 100% rename from content/contact/contents+de.lr rename to content/about/contact/contents+de.lr diff --git a/content/contact/contents+es.lr b/content/about/contact/contents+es.lr similarity index 100% rename from content/contact/contents+es.lr rename to content/about/contact/contents+es.lr diff --git a/content/contact/contents+pt.lr b/content/about/contact/contents+pt.lr similarity index 100% rename from content/contact/contents+pt.lr rename to content/about/contact/contents+pt.lr diff --git a/content/about/contact/contents.lr b/content/about/contact/contents.lr new file mode 100644 index 0000000000..fae627e352 --- /dev/null +++ b/content/about/contact/contents.lr @@ -0,0 +1,23 @@ +_model: page +--- +title: Contact +--- +summary: Looking to speak to someone from the BeeWare project? Here's how. +--- +sort_key: 6 +--- +incomplete: no +--- +body: + + +If you have a general question about BeeWare usage, we have a number of `community communication channels `__ where you can ask for assistance. + +If you need advice on how to contribute, or you have questions about the management of the project, anyone on the `Core Team `__ will be able to help you. + +If you want to report a security problem with one of the BeeWare tools, please contact the `Core Team `__. + +If you have had a bad experience in a BeeWare community space, or want to report a behaviour problem with someone who is a member of the BeeWare community, the `Core Team `__ will be happy to manage your report in accordance with our `Code of Conduct reporting guide `__. + +For all other enquiries, please contact Founding Apiarist `Russell Keith-Magee `__. + diff --git a/content/contact/media/beeware-150.png b/content/about/contact/media/beeware-150.png similarity index 100% rename from content/contact/media/beeware-150.png rename to content/about/contact/media/beeware-150.png diff --git a/content/contact/media/beeware-519.png b/content/about/contact/media/beeware-519.png similarity index 100% rename from content/contact/media/beeware-519.png rename to content/about/contact/media/beeware-519.png diff --git a/content/contact/media/beeware-enthusiasts-150.png b/content/about/contact/media/beeware-enthusiasts-150.png similarity index 100% rename from content/contact/media/beeware-enthusiasts-150.png rename to content/about/contact/media/beeware-enthusiasts-150.png diff --git a/content/contact/media/beeware-enthusiasts-2000.png b/content/about/contact/media/beeware-enthusiasts-2000.png similarity index 100% rename from content/contact/media/beeware-enthusiasts-2000.png rename to content/about/contact/media/beeware-enthusiasts-2000.png diff --git a/content/contact/media/beeware-enthusiasts-600.png b/content/about/contact/media/beeware-enthusiasts-600.png similarity index 100% rename from content/contact/media/beeware-enthusiasts-600.png rename to content/about/contact/media/beeware-enthusiasts-600.png diff --git a/content/contact/media/beeware-enthusiasts.eps b/content/about/contact/media/beeware-enthusiasts.eps similarity index 100% rename from content/contact/media/beeware-enthusiasts.eps rename to content/about/contact/media/beeware-enthusiasts.eps diff --git a/content/contact/media/beeware-wide-143.png b/content/about/contact/media/beeware-wide-143.png similarity index 100% rename from content/contact/media/beeware-wide-143.png rename to content/about/contact/media/beeware-wide-143.png diff --git a/content/contact/media/beeware-wide-2028.png b/content/about/contact/media/beeware-wide-2028.png similarity index 100% rename from content/contact/media/beeware-wide-2028.png rename to content/about/contact/media/beeware-wide-2028.png diff --git a/content/contact/media/beeware-wide-600.png b/content/about/contact/media/beeware-wide-600.png similarity index 100% rename from content/contact/media/beeware-wide-600.png rename to content/about/contact/media/beeware-wide-600.png diff --git a/content/contact/media/beeware-wide.eps b/content/about/contact/media/beeware-wide.eps similarity index 100% rename from content/contact/media/beeware-wide.eps rename to content/about/contact/media/beeware-wide.eps diff --git a/content/contact/media/beeware.eps b/content/about/contact/media/beeware.eps similarity index 100% rename from content/contact/media/beeware.eps rename to content/about/contact/media/beeware.eps diff --git a/content/contact/media/brutus-1024.png b/content/about/contact/media/brutus-1024.png similarity index 100% rename from content/contact/media/brutus-1024.png rename to content/about/contact/media/brutus-1024.png diff --git a/content/contact/media/brutus-128.png b/content/about/contact/media/brutus-128.png similarity index 100% rename from content/contact/media/brutus-128.png rename to content/about/contact/media/brutus-128.png diff --git a/content/contact/media/brutus-256.png b/content/about/contact/media/brutus-256.png similarity index 100% rename from content/contact/media/brutus-256.png rename to content/about/contact/media/brutus-256.png diff --git a/content/contact/media/brutus-32.png b/content/about/contact/media/brutus-32.png similarity index 100% rename from content/contact/media/brutus-32.png rename to content/about/contact/media/brutus-32.png diff --git a/content/contact/media/brutus.eps b/content/about/contact/media/brutus.eps similarity index 100% rename from content/contact/media/brutus.eps rename to content/about/contact/media/brutus.eps diff --git a/content/contact/media/contents+ar.lr b/content/about/contact/media/contents+ar.lr similarity index 100% rename from content/contact/media/contents+ar.lr rename to content/about/contact/media/contents+ar.lr diff --git a/content/contact/media/contents+es.lr b/content/about/contact/media/contents+es.lr similarity index 100% rename from content/contact/media/contents+es.lr rename to content/about/contact/media/contents+es.lr diff --git a/content/contact/media/contents+pt.lr b/content/about/contact/media/contents+pt.lr similarity index 100% rename from content/contact/media/contents+pt.lr rename to content/about/contact/media/contents+pt.lr diff --git a/content/about/contact/media/contents.lr b/content/about/contact/media/contents.lr new file mode 100644 index 0000000000..d84ac88d07 --- /dev/null +++ b/content/about/contact/media/contents.lr @@ -0,0 +1,82 @@ +_model: page +--- +title: Media +--- +body: + + +Short description +================= + +BeeWare is a collection of tools and libraries to aid in writing application user interfaces in Python. + +Long description +================ + +BeeWare is a collection of tools and libraries to aid in writing application user interfaces in Python. It enables developers to write applications for iPhone, Android, Linux, macOS and Windows that are indistinguishable from natively written applications. + + +Logos +===== + +BeeWare logo +~~~~~~~~~~~~ + +.. image:: /contact/media/beeware-150.png + :alt: BeeWare logo + +* `Small `__ +* `Medium `__ +* `Vector `__ + +BeeWare (wide) logo +~~~~~~~~~~~~~~~~~~~ + +.. image:: /contact/media/beeware-wide-143.png + :alt: BeeWare logo (wide) + +* `Small `__ +* `Medium `__ +* `Large `__ +* `Vector `__ + +BeeWare Enthusiasts logo +~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: /contact/media/beeware-enthusiasts-150.png + :alt: BeeWare Enthusiasts logo + +* `Small `__ +* `Medium `__ +* `Large `__ +* `Vector `__ + +Brutus the Bee +~~~~~~~~~~~~~~ + +.. image:: /contact/media/brutus-128.png + :alt: Brutus the Bee + +* `Small `__ +* `Medium `__ +* `Large `__ +* `X-large `__ +* `Vector `__ + +--- +summary: Are you from a media organization and want to write something about BeeWare? Here are some resources you may find helpful. +--- +incomplete: no +--- +gutter: + +Contact +======= + +For all media enquiries, please contact: + + * **Dr Russell Keith-Magee**, Founding Apiarist: `russell@beeware.org `__. + * **Philip James**, Apiarist: `philip@beeware.org `__. + +--- +sort_key: 2 diff --git a/content/project/about/contents+de.lr b/content/about/contents+de.lr similarity index 100% rename from content/project/about/contents+de.lr rename to content/about/contents+de.lr diff --git a/content/project/about/contents+es.lr b/content/about/contents+es.lr similarity index 100% rename from content/project/about/contents+es.lr rename to content/about/contents+es.lr diff --git a/content/project/about/contents+pt.lr b/content/about/contents+pt.lr similarity index 100% rename from content/project/about/contents+pt.lr rename to content/about/contents+pt.lr diff --git a/content/project/about/contents+zh_TW.lr b/content/about/contents+zh_TW.lr similarity index 100% rename from content/project/about/contents+zh_TW.lr rename to content/about/contents+zh_TW.lr diff --git a/content/about/contents.lr b/content/about/contents.lr new file mode 100644 index 0000000000..c1c85e3511 --- /dev/null +++ b/content/about/contents.lr @@ -0,0 +1,27 @@ +_model: page +--- +title: About BeeWare +--- +summary: The history and philosophy of the BeeWare Project +--- +sort_key: 5 +--- +body: + + +BeeWare: The IDEs of Python +=========================== + +This is BeeWare. We're incredibly excited about what the future holds for Python. We hope you'll join us on this journey. + + +--- +gutter: + +Meet Brutus +=========== +.. image:: /static/images/brutus-128.png + +Brutus the Bee is the mascot of the BeeWare project. He's a busy little worker bee. + +Fun fact: a person who keeps bees is called an **apiarist** - a name that the BeeWare project uses to describe the core team. This also reflects the relationship that the core team wishes to have with the community - we're shepherds of the community, and we'll provide direction, but we know the real work is done by the community as a whole. diff --git a/content/about/goal/contents.lr b/content/about/goal/contents.lr new file mode 100644 index 0000000000..9a2cb8da1c --- /dev/null +++ b/content/about/goal/contents.lr @@ -0,0 +1,73 @@ +_model: page +--- +title: Goals +--- +summary: The goals of the BeeWare Project +--- +sort_key: 5 +--- +body: + + +The goal +======== + +The end goal of the BeeWare project: To be able to do for mobile and desktop user-facing software the same thing that Django has done for web software - to put into the hands of users a set of tools and libraries that enables them to develop rich, native user interfaces, and deploy them to their devices. This includes: + + * Tools to enable Python to run on different devices, + * Tools to package a Python project so it can run on those devices, + * Libraries to access the native widgets and capabilities of devices, + * Tools to help develop, debug, analyze and these projects. + +This aim is that this set of tools will be easy enough to use for complete newcomers to use in a Django Girls-like setting; but powerful enough that they could be used to drive the next Instagram, Pinterest or Disqus. + +Most importantly, it aims to do all this as an Open Source community. The Open Source development process has proven itself to be the most reliable way to develop robust and reliable software, and the fact that anyone can access the software means that everyone can start with the same set of excellent tools, be they expert or enthusiastic amateur. + +Python everywhere +~~~~~~~~~~~~~~~~~ + +A modern computing project can't ignore the biggest development in computing of the last 10 years. Python prides itself on being a cross-platform language. 10 years ago, being cross-platform meant being available for Windows, macOS and Linux. These days, mobile computing is much more important. Despite this, there aren't many good options for Python programming on mobile platforms, and cross-platform mobile coding is still elusive. + +BeeWare embraces mobile and other emerging platforms (like watches and set-top-boxes) as a first class citizen of the computing ecosystem - because if people have these devices, why shouldn't they be able to write software for them in Python. + +Native everywhere +~~~~~~~~~~~~~~~~~~ + +It's easy to use themes to achieve cross-platform. However, it's easy to spot apps that have been built using themes - they're the ones that don't behave quite like any other app. Widgets don't look *quite* right, or there's a menu bar on a window in an OS X app. Themes can get quite close - but there are always telltale signs. + +On top of that, native widgets are always faster than a themed generic widget. After all, you're using native system capability that has been tuned and optimized, not a drawing engine that's been layered on top of a generic widget. + +Themes also miss many of the accessibility benefits of native platforms. Modern OS authors spend a lot of time tuning affordances for people with impaired mobility, vision or cognition. If you use native widgets, you usually get these affordances for free. If you reimplement widgets with a theme, you also have to re-implement the affordances. + +BeeWare uses native widgets and native functionality, rather than using a theme-based approach to application development. + +Python native +~~~~~~~~~~~~~ + +BeeWare is also an unapologetically "Python first" framework. We like Python. We like the way it looks, and the way it works. If Python isn't available as a first-class option on a particular platform, we'll do whatever is necessary to make Python available as a development language. And when we have the opportunity to embrace Python idiom for an API or a design, we're going to do just that. That means we're going to use generators, context managers, `yield from` asynchronous calls, and more, in order to provide the best Python-native API for cross-platform app development. + +We're also looking to the future - this means that we support Python 3 exclusively. + +Native experience +~~~~~~~~~~~~~~~~~ + +The experience of using any tool starts with the installation process. Part of BeeWare's "Native everywhere" philosophy is adopting appropriate native mechanisms for installation. If you're using a user-space tool, it should be presented to you as a package that is to be installed in the same way you would install any other tool - be that through an app store, an installer, or a simple executable package. End users shouldn't know that you've written the application in Python. + +But if you're using a developer tool or library, then it should integrate with your development environment. And since we're using Python, that means you should be able to install it into your virtual environment using `pip install` and nothing more. No C-extensions, no compilers, no setting system paths or environment variables - Just install it, import it, and start writing (or running) code. + +--- +gutter: + +* `The Goal`_ + - `Python everywhere`_ + - `Native everywhere`_ + - `Python native`_ + - `Native experience`_ + + +.. _`The Goal`: ./#the-goal +.. _`Python everywhere`: ./#python-everywhere +.. _`Native everywhere`: ./#native-everywhere +.. _`Python native`: ./#python-native +.. _`Native experience`: ./#native-experience + diff --git a/content/about/history/contents.lr b/content/about/history/contents.lr new file mode 100644 index 0000000000..220e8317a0 --- /dev/null +++ b/content/about/history/contents.lr @@ -0,0 +1,61 @@ +_model: page +--- +title: History and Philosophy +--- +summary: The history and philosophy of the BeeWare Project +--- +sort_key: 5 +--- +body: + +History +======= + +The BeeWare project started with a simple question: Why aren't the tools that we use as Python developers improving at the same rate as the rest of the technology we use on a daily basis? + +Python has proven itself as a highly capable language - approachable for newcomers, but powerful in the hands of experts. Python is rapidly becoming a major part of the data analysis, scientific computing, and web development landscape. And initiatives like `Django Girls`_ have demonstrated that using Python, it is possible to provide a 1-day training courses that introducing people with no programming experience to Python; and at the end of a day, attendees have developed and deployed a database-backed dynamic website, deployed to a publicly visible server. + +.. _Django Girls: https://djangogirls.org/ + +However, the developer experience for someone writing Python sometimes reflects more of the early 90's than the new millennium. The default development environment for Python is still an 80x25 console window. For users who have come from a Windows or Apple environment, where they're used to highly detailed, well designed graphical interfaces, this 30 year flashback can be a completely alien experience. + +And, yes, there are IDEs (Integrated Development Environments) that provide a native application experience for writing code. But those tools require you to adopt, wholesale, the IDE's way of looking at a project. They often introduce as many headaches to the development process as they solve. + +And so, we're left with an interesting schism, between the "old way" of Unix development in a console window, and the "new way" of all-in-one IDEs. + +The Unix Philosophy +~~~~~~~~~~~~~~~~~~~ + +However, it doesn't have to be that way. The core tenet of the Unix Philosophy is that "each tool does one thing, well". This is a very powerful philosophy, and it enables the composition of extremely powerful toolchains by putting together a suite of extremely focussed, independent tools. + +Unfortunately, most UNIX tools have convolved this to also mean "all tools must use a console interface". However, there's nothing in the UNIX philosophy that says that tools have to use a console interface - it's just turned out that way. + +The BeeWare project started with the premise we can have the best of both worlds. We can have a chain of composable tools that each do one thing, well. But those tools can also expose their functionality using a rich graphical user interface. + +More than just code +=================== + +It's about more than just code, though. A successful software project requires documentation, design skills, feedback and bug reports. The BeeWare community acknowledges that *all* contributions are important - not just the ones that come as a pull request on GitHub. + +Even then, it's easy to think of a project in a vacuum, as the sum of all contributions. But that's never the case. An open source project is about community. + +Diversity and inclusion +~~~~~~~~~~~~~~~~~~~~~~~ + +A diverse community is a strong community. This means accepting people of all levels of experience, from all backgrounds, of all races, creeds, orientations and expressions. The BeeWare project is committed to developing and maintaining a inclusive, diverse and welcoming community. + +To back this up, we have an open offer to mentor anyone who wants to get involved as a contributor, and a `Code of Conduct`_ that is rigorously enforced. Any reports of violations of that code of conduct - even by senior community members - will be treated with respect and actioned appropriately. + +.. _Code of Conduct: /community/behavior/code-of-conduct/ + +Healthy and sustainable +~~~~~~~~~~~~~~~~~~~~~~~ + +It's also important to make sure that the community is accessible and sustainable. It's unfortunately become an accepted part of Open Source culture that "true" Open Source projects have to be developed entirely by volunteers. This acts as a barrier to entry for many groups - the only people able to spend their free time volunteering are those that *have* free time. + +It also frequently leads to burnout and other mental health issues amongst contributors. The fact that depression, anxiety, and burnout are so common in software development communities shouldn't be considered a badge of honour, or a demonstration of how committed a development team can be. It's a problem that needs to be tackled head on, and addressed in the same way a software bug would be addressed - with immediate workarounds, and long term plans to remove the systemic cause of the problem. + +While we place incredible value on the contributions of volunteers, we also know that volunteer efforts alone aren't the way to develop a healthy and sustainable community. For that reason, financial sustainability is a key consideration in the operation of the BeeWare project. As a community, we don't ignore the role that money has to play in providing the resources that allows people to begin and continue to contribute. We will, as a community, provide accepted mechanisms for individuals to monetize their work in meaningful ways, and wherever possible, compensate people for their work - without compromising the ideals of Open Source development. + + + diff --git a/content/project/overview/contents+de.lr b/content/about/overview/contents+de.lr similarity index 100% rename from content/project/overview/contents+de.lr rename to content/about/overview/contents+de.lr diff --git a/content/project/overview/contents+es.lr b/content/about/overview/contents+es.lr similarity index 100% rename from content/project/overview/contents+es.lr rename to content/about/overview/contents+es.lr diff --git a/content/project/overview/contents+fr.lr b/content/about/overview/contents+fr.lr similarity index 100% rename from content/project/overview/contents+fr.lr rename to content/about/overview/contents+fr.lr diff --git a/content/project/overview/contents+pt.lr b/content/about/overview/contents+pt.lr similarity index 100% rename from content/project/overview/contents+pt.lr rename to content/about/overview/contents+pt.lr diff --git a/content/project/overview/contents+zh_TW.lr b/content/about/overview/contents+zh_TW.lr similarity index 100% rename from content/project/overview/contents+zh_TW.lr rename to content/about/overview/contents+zh_TW.lr diff --git a/content/about/overview/contents.lr b/content/about/overview/contents.lr new file mode 100644 index 0000000000..3649925f48 --- /dev/null +++ b/content/about/overview/contents.lr @@ -0,0 +1,46 @@ +_model: page +--- +title: What is BeeWare? +--- +body: + + +Python has proven itself as a highly capable language - approachable for newcomers, but powerful in the hands of experts. The BeeWare Project aims to take the power of Python as a language, and use it to enable users of all skill levels to develop applications with native user interfaces. + +The end goal of the BeeWare project: To be able to do for mobile and desktop user-facing software the same thing that Django has done for web software - to put into the hands of users a set of tools and libraries that enables them to develop rich, native user interfaces, and deploy them to their devices. This includes: + +* Tools to enable Python to run on different devices, +* Tools to package a Python project so it can run on those devices, +* Libraries to access the native widgets and capabilities of devices, +* Tools to help develop, debug, analyze and deploy these projects. + +The aim is that this set of tools will be easy enough to use for complete newcomers to use in a Django Girls-like setting; but powerful enough that they could be used to drive the next Instagram, Pinterest or Disqus. + +We're not just about software, though. We also aim to be a project with a social conscience. We aim to develop and maintain a diverse and inclusive community, and we have a Code of Conduct that is rigorously enforced. We also aspire to develop a healthy and sustainable community - one that is aware of mental health issues of its participants, and provides the resources for people to start engaging, and continue to engage with the community. + +Where to from here? +=================== + +If you'd like to know more about the history of BeeWare, `start here `__. + +If you'd like to take BeeWare for a test drive, `take a look at the the various ways BeeWare tools can be used `__. + +If you'd like to keep up to date with what we're doing, follow `@beeware@fosstodon.org `__ on Mastodon. If you'd like to receive updates, hints, tips and announcements about the BeeWare project, `sign up for the Beeware Enthusiasts mailing list `__. + +--- +gutter: + +Next steps +========== + +* The `History of the BeeWare project `__ +* `BeeWare test drive `__ +* `@beeware@fosstodon.org on Mastodon `__ +* The `Beeware Enthusiasts mailing list `__ + +--- +incomplete: no +--- +sort_key: 1 +--- +summary: A first-timer's introduction to the BeeWare project diff --git a/content/community/team/cflee/cflee.png b/content/about/team/cflee/cflee.png similarity index 100% rename from content/community/team/cflee/cflee.png rename to content/about/team/cflee/cflee.png diff --git a/content/community/team/cflee/contents+es.lr b/content/about/team/cflee/contents+es.lr similarity index 100% rename from content/community/team/cflee/contents+es.lr rename to content/about/team/cflee/contents+es.lr diff --git a/content/about/team/cflee/contents.lr b/content/about/team/cflee/contents.lr new file mode 100644 index 0000000000..2b16941183 --- /dev/null +++ b/content/about/team/cflee/contents.lr @@ -0,0 +1,24 @@ +name: Chiang Fong Lee +--- +description: + +Chiang Fong has been pretending to be a systems administrator since the Mandriva Linux days, and has recently moved into acting like he knows how to write software. + +When not poking at code to de-stress, he spends his time fiddling with fountain pens and mechanical keyboards. +He has yet to learn the lesson of not mixing inky fingers with pretty keycaps. +--- +email: myself@cflee.net +--- +github_handle: cflee +--- +twitter_handle: cflee +--- +mastodon_handle: @cflee@hachyderm.io +--- +join_date: 2017-03-11 +--- +summary: cflee +--- +superpower: voc +--- +emeritus_date: 2020-06-01 diff --git a/content/community/team/contents+ar.lr b/content/about/team/contents+ar.lr similarity index 100% rename from content/community/team/contents+ar.lr rename to content/about/team/contents+ar.lr diff --git a/content/community/team/contents+es.lr b/content/about/team/contents+es.lr similarity index 100% rename from content/community/team/contents+es.lr rename to content/about/team/contents+es.lr diff --git a/content/community/team/contents+pt.lr b/content/about/team/contents+pt.lr similarity index 100% rename from content/community/team/contents+pt.lr rename to content/about/team/contents+pt.lr diff --git a/content/about/team/contents.lr b/content/about/team/contents.lr new file mode 100644 index 0000000000..5889304685 --- /dev/null +++ b/content/about/team/contents.lr @@ -0,0 +1,9 @@ +_model: team +--- +sort_key: 2 +--- +title: The Bee Team +--- +summary: The core team behind BeeWare development +--- +body: So who are the people behind BeeWare? Well, there's a huge group of contributors, but the project is managed by the Bee Team. diff --git a/content/community/team/danyeaw/contents+es.lr b/content/about/team/danyeaw/contents+es.lr similarity index 100% rename from content/community/team/danyeaw/contents+es.lr rename to content/about/team/danyeaw/contents+es.lr diff --git a/content/community/team/danyeaw/contents+pt.lr b/content/about/team/danyeaw/contents+pt.lr similarity index 100% rename from content/community/team/danyeaw/contents+pt.lr rename to content/about/team/danyeaw/contents+pt.lr diff --git a/content/about/team/danyeaw/contents.lr b/content/about/team/danyeaw/contents.lr new file mode 100644 index 0000000000..e9f9bcbbc6 --- /dev/null +++ b/content/about/team/danyeaw/contents.lr @@ -0,0 +1,24 @@ +name: Dan Yeaw +--- +join_date: 2018-02-28 +--- +twitter_handle: danyeaw +--- +mastodon_handle: @danyeaw@fosstodon.org +--- +description: + +Dan leads teams to design safety in to complex automotive and mobility systems, and dreams of using BeeWare tools to help model these systems. + +When not hacking on open source projects, Dan likes to hang with his kids, brew beer, and play soccer. +--- +github_handle: danyeaw +--- +email: dan@yeaw.me +--- +superpower: toga, lektor +--- +summary: Submarine Bubblehead +--- +emeritus_date: 2021-05-01 + diff --git a/content/community/team/danyeaw/danyeaw.png b/content/about/team/danyeaw/danyeaw.png similarity index 100% rename from content/community/team/danyeaw/danyeaw.png rename to content/about/team/danyeaw/danyeaw.png diff --git a/content/community/team/elias/contents+es.lr b/content/about/team/elias/contents+es.lr similarity index 100% rename from content/community/team/elias/contents+es.lr rename to content/about/team/elias/contents+es.lr diff --git a/content/about/team/elias/contents.lr b/content/about/team/elias/contents.lr new file mode 100644 index 0000000000..e41e258347 --- /dev/null +++ b/content/about/team/elias/contents.lr @@ -0,0 +1,19 @@ +name: Elias Dorneles +--- +description: + +Elias is a certified yak-shaver. He likes to fiddle with Python and open source stuff. At home, he likes to read, cook and to play Beatles songs on his guitar. + +Elias gets by with a little help from his friends. +--- +email: eliasdorneles@gmail.com +--- +github_handle: eliasdorneles +--- +join_date: 2017-03-01 +--- +summary: Yak-shaver +--- +superpower: voc, android +--- +emeritus_date: 2020-06-03 diff --git a/content/community/team/elias/elias.png b/content/about/team/elias/elias.png similarity index 100% rename from content/community/team/elias/elias.png rename to content/about/team/elias/elias.png diff --git a/content/community/team/flowerncsu/contents+es.lr b/content/about/team/flowerncsu/contents+es.lr similarity index 100% rename from content/community/team/flowerncsu/contents+es.lr rename to content/about/team/flowerncsu/contents+es.lr diff --git a/content/about/team/flowerncsu/contents.lr b/content/about/team/flowerncsu/contents.lr new file mode 100644 index 0000000000..2094c65d6d --- /dev/null +++ b/content/about/team/flowerncsu/contents.lr @@ -0,0 +1,17 @@ +description: Charlotte has been coding for more years than she likes to admit, and has a passion for building cool things and helping other people learn how to build cool things. She is among the organizers of PyLadies RDU, and can often be found making things out of yarn when not making things out of code. +--- +name: Charlotte Mays +--- +twitter_handle: charlottecodes +--- +mastodon_handle: @charlotte@hachyderm.io +--- +summary: +--- +join_date: 2017-08-17 +--- +github_handle: flowerncsu +--- +email: charlotte@charlottemays.me +--- +superpower: cricket diff --git a/content/community/team/flowerncsu/flowerncsu.png b/content/about/team/flowerncsu/flowerncsu.png similarity index 100% rename from content/community/team/flowerncsu/flowerncsu.png rename to content/about/team/flowerncsu/flowerncsu.png diff --git a/content/community/team/freakboy3742/contents+de.lr b/content/about/team/freakboy3742/contents+de.lr similarity index 100% rename from content/community/team/freakboy3742/contents+de.lr rename to content/about/team/freakboy3742/contents+de.lr diff --git a/content/community/team/freakboy3742/contents+es.lr b/content/about/team/freakboy3742/contents+es.lr similarity index 100% rename from content/community/team/freakboy3742/contents+es.lr rename to content/about/team/freakboy3742/contents+es.lr diff --git a/content/community/team/freakboy3742/contents+pt.lr b/content/about/team/freakboy3742/contents+pt.lr similarity index 100% rename from content/community/team/freakboy3742/contents+pt.lr rename to content/about/team/freakboy3742/contents+pt.lr diff --git a/content/about/team/freakboy3742/contents.lr b/content/about/team/freakboy3742/contents.lr new file mode 100644 index 0000000000..68cf8af640 --- /dev/null +++ b/content/about/team/freakboy3742/contents.lr @@ -0,0 +1,17 @@ +description: Dr Russell Keith-Magee is the founder of the BeeWare project. He joined the Django core team since 2006, and for 5 years, was President of the Django Software Foundation. When he's not contributing to open source, he's a Principal Software Engineer in the Open Source group at Anaconda. +--- +name: Russell Keith-Magee +--- +twitter_handle: freakboy3742 +--- +summary: Founding Apiarist +--- +join_date: 2013-09-05 +--- +github_handle: freakboy3742 +--- +email: russell@beeware.org +--- +superpower: bdfn +--- +mastodon_handle: @freakboy3742@cloudisland.nz diff --git a/content/community/team/freakboy3742/freakboy3742.png b/content/about/team/freakboy3742/freakboy3742.png similarity index 100% rename from content/community/team/freakboy3742/freakboy3742.png rename to content/about/team/freakboy3742/freakboy3742.png diff --git a/content/community/team/glasnt/contents+es.lr b/content/about/team/glasnt/contents+es.lr similarity index 100% rename from content/community/team/glasnt/contents+es.lr rename to content/about/team/glasnt/contents+es.lr diff --git a/content/community/team/glasnt/contents+pt.lr b/content/about/team/glasnt/contents+pt.lr similarity index 100% rename from content/community/team/glasnt/contents+pt.lr rename to content/about/team/glasnt/contents+pt.lr diff --git a/content/about/team/glasnt/contents.lr b/content/about/team/glasnt/contents.lr new file mode 100644 index 0000000000..440226726e --- /dev/null +++ b/content/about/team/glasnt/contents.lr @@ -0,0 +1,21 @@ +name: Katie McLaughlin +--- +join_date: 2016-04-02 +--- +twitter_handle: glasnt +--- +mastodon_handle: @glasnt@cloudisland.nz +--- +description: + +Katie has worn many different hats over the years. She has previously been a software developer for many languages, systems administrator for multiple operating systems, and speaker on many different topics. + +When she's not changing the world, she enjoys cooking, making tapestries, and seeing just how well various application stacks handle emoji. +--- +github_handle: glasnt +--- +email: katie@beeware.org +--- +superpower: batavia, lektor, senior +--- +summary: Tasmanian Devil Wrangler diff --git a/content/community/team/glasnt/glasnt.png b/content/about/team/glasnt/glasnt.png similarity index 100% rename from content/community/team/glasnt/glasnt.png rename to content/about/team/glasnt/glasnt.png diff --git a/content/community/team/hawkowl/contents+es.lr b/content/about/team/hawkowl/contents+es.lr similarity index 100% rename from content/community/team/hawkowl/contents+es.lr rename to content/about/team/hawkowl/contents+es.lr diff --git a/content/community/team/hawkowl/contents+pt.lr b/content/about/team/hawkowl/contents+pt.lr similarity index 100% rename from content/community/team/hawkowl/contents+pt.lr rename to content/about/team/hawkowl/contents+pt.lr diff --git a/content/about/team/hawkowl/contents.lr b/content/about/team/hawkowl/contents.lr new file mode 100644 index 0000000000..a98d88a3ee --- /dev/null +++ b/content/about/team/hawkowl/contents.lr @@ -0,0 +1,21 @@ +description: + +Amber Brown pretends to be an owl on the internet. +When she's not releasing or working on Twisted, she works on software for various commercial and non-profit companies. +She's so good at talking endlessly about Twisted that Russell even once invited her to keynote on it. + +Also, she likes people tweeting pictures of owls at her. +--- +name: Amber Brown +--- +twitter_handle: hawkieowl +--- +summary: Owl-themed Toga Widget Simulator +--- +join_date: 2016-10-13 +--- +github_handle: hawkowl +--- +email: hawkowl@atleastfornow.net +--- +superpower: toga, lektor diff --git a/content/community/team/hawkowl/hawkowl.png b/content/about/team/hawkowl/hawkowl.png similarity index 100% rename from content/community/team/hawkowl/hawkowl.png rename to content/about/team/hawkowl/hawkowl.png diff --git a/content/about/team/mhsmith/contents.lr b/content/about/team/mhsmith/contents.lr new file mode 100644 index 0000000000..b5dea33599 --- /dev/null +++ b/content/about/team/mhsmith/contents.lr @@ -0,0 +1,13 @@ +name: Malcolm Smith +--- +join_date: 2022-08-31 +--- +twitter_handle: +--- +description: Malcolm is the creator of Chaquopy, which aims to make it as easy as possible to use Python in Android apps. With BeeWare, he's now looking forward to expanding that mission to all desktop and mobile platforms. +--- +github_handle: mhsmith +--- +email: smith@chaquo.com +--- +superpower: android diff --git a/content/community/team/mhsmith/mhsmith.png b/content/about/team/mhsmith/mhsmith.png similarity index 100% rename from content/community/team/mhsmith/mhsmith.png rename to content/about/team/mhsmith/mhsmith.png diff --git a/content/about/team/obulat/contents.lr b/content/about/team/obulat/contents.lr new file mode 100644 index 0000000000..a0611ad39d --- /dev/null +++ b/content/about/team/obulat/contents.lr @@ -0,0 +1,17 @@ +name: Olga Bulat +--- +join_date: 2018-03-05 +--- +twitter_handle: bulat_olga +--- +description: + +Olga is a python and BeeWare enthusiast, also interested in NLP, geography and languages. + +She also enjoys hanging out with kids. +--- +github_handle: obulat +--- +email: obulat@gmail.com +--- +superpower: toga diff --git a/content/community/team/obulat/obulat.png b/content/about/team/obulat/obulat.png similarity index 100% rename from content/community/team/obulat/obulat.png rename to content/about/team/obulat/obulat.png diff --git a/content/community/team/phildini/contents+es.lr b/content/about/team/phildini/contents+es.lr similarity index 100% rename from content/community/team/phildini/contents+es.lr rename to content/about/team/phildini/contents+es.lr diff --git a/content/community/team/phildini/contents+pt.lr b/content/about/team/phildini/contents+pt.lr similarity index 100% rename from content/community/team/phildini/contents+pt.lr rename to content/about/team/phildini/contents+pt.lr diff --git a/content/about/team/phildini/contents.lr b/content/about/team/phildini/contents.lr new file mode 100644 index 0000000000..250e77410d --- /dev/null +++ b/content/about/team/phildini/contents.lr @@ -0,0 +1,17 @@ +name: Philip James +--- +description: Philip writes code for computers and for humans. His first computing love is Python, but is too often forced to write JavaScript and Swift. When he's not writing code for money or for Open Source or for his own crazy projects, he gives talks at conferences. Philip lives in Alameda, California with his wife and her cat. Philip believes in the web. +--- +join_date: 2016-06-03 +--- +summary: +--- +twitter_handle: phildini +--- +mastodon_handle: @phildini@phildini.net +--- +github_handle: phildini +--- +email: philip@beeware.org +--- +superpower: batavia, senior diff --git a/content/community/team/phildini/phildini.png b/content/about/team/phildini/phildini.png similarity index 100% rename from content/community/team/phildini/phildini.png rename to content/about/team/phildini/phildini.png diff --git a/content/about/team/rmartin16/contents.lr b/content/about/team/rmartin16/contents.lr new file mode 100644 index 0000000000..9921f9fa42 --- /dev/null +++ b/content/about/team/rmartin16/contents.lr @@ -0,0 +1,13 @@ +name: Russell Martin +--- +join_date: 2022-08-31 +--- +twitter_handle: +--- +description: Russell is a tinkerer and aspiring creator. He fell in love with python years ago and wants to see apps built with it everywhere. If he isn't writing code, he's probably falling down a Wikipedia rabbit hole or playing sys admin to his bloated home lab. +--- +github_handle: rmartin16 +--- +email: rmartin16@gmail.com +--- +superpower: briefcase diff --git a/content/community/team/rmartin16/rmartin16.png b/content/about/team/rmartin16/rmartin16.png similarity index 100% rename from content/community/team/rmartin16/rmartin16.png rename to content/about/team/rmartin16/rmartin16.png diff --git a/content/community/team/samschott/contents-de.lr b/content/about/team/samschott/contents-de.lr similarity index 100% rename from content/community/team/samschott/contents-de.lr rename to content/about/team/samschott/contents-de.lr diff --git a/content/about/team/samschott/contents.lr b/content/about/team/samschott/contents.lr new file mode 100644 index 0000000000..011eae5593 --- /dev/null +++ b/content/about/team/samschott/contents.lr @@ -0,0 +1,18 @@ +name: Sam Schott +--- +description: Sam is a physicist and a software engineer. He got introduced +to Python while automating data acquisition in the lab and soon realised +that he enjoyed writing and sharing code. When away from a computer, +you will find him hiking or sailing along the English coast. +--- +join_date: 2021-07-29 +--- +summary: +--- +twitter_handle: +--- +github_handle: samschott +--- +email: sam.schott@outlook.com +--- +superpower: toga diff --git a/content/community/team/samschott/samschott.png b/content/about/team/samschott/samschott.png similarity index 100% rename from content/community/team/samschott/samschott.png rename to content/about/team/samschott/samschott.png diff --git a/content/about/team/saroad2/contents.lr b/content/about/team/saroad2/contents.lr new file mode 100644 index 0000000000..9e7fa17424 --- /dev/null +++ b/content/about/team/saroad2/contents.lr @@ -0,0 +1,15 @@ +name: Sagi Shadur +--- +description: Sagi Shadur is a software engineer and a mathematician. He has a B.Sc. in mathematics and these days he's on his way for a second B.Sc. in physics. He's also a poet who published two books in Hebrew, "Mountains and Valleys" and "The Emissary". +--- +join_date: 2020-05-31 +--- +summary: +--- +twitter_handle: +--- +github_handle: saroad2 +--- +email: saroad2@gmail.com +--- +superpower: toga diff --git a/content/community/team/saroad2/saroad2.png b/content/about/team/saroad2/saroad2.png similarity index 100% rename from content/community/team/saroad2/saroad2.png rename to content/about/team/saroad2/saroad2.png diff --git a/content/community/team/swenson/contents+es.lr b/content/about/team/swenson/contents+es.lr similarity index 100% rename from content/community/team/swenson/contents+es.lr rename to content/about/team/swenson/contents+es.lr diff --git a/content/community/team/swenson/contents+pt.lr b/content/about/team/swenson/contents+pt.lr similarity index 100% rename from content/community/team/swenson/contents+pt.lr rename to content/about/team/swenson/contents+pt.lr diff --git a/content/about/team/swenson/contents.lr b/content/about/team/swenson/contents.lr new file mode 100644 index 0000000000..7ac92c5ed1 --- /dev/null +++ b/content/about/team/swenson/contents.lr @@ -0,0 +1,26 @@ +description: + +Dr. Christopher Swenson is a software engineer, computer scientist, and occasional mathematician. +Swenson has been working with Python since about 2004, and involved in open source since before knowing what open source really was. +Swenson likes sorting a lot, and maintains an open source high-performance C sorting library. +Swenson has sold their labor to companies big and small, such as Simple, Google, and the US Government, and wrote a book on cryptography. +Swenson is an organizer of PyDX. +Swenson is a cupcake. +--- +name: Christopher Swenson +--- +twitter_handle: chris_swenson +--- +mastodon_handle: @chris_swenson@tweets.icu +--- +summary: Cupcake +--- +join_date: 2016-09-07 +--- +github_handle: swenson +--- +email: swenson@beeware.org +--- +superpower: batavia +--- +emeritus_date: 2021-05-01 diff --git a/content/community/team/swenson/swenson.png b/content/about/team/swenson/swenson.png similarity index 100% rename from content/community/team/swenson/swenson.png rename to content/about/team/swenson/swenson.png diff --git a/content/b/signup/contents.lr b/content/b/signup/contents.lr index e232e79584..07f61fc429 100644 --- a/content/b/signup/contents.lr +++ b/content/b/signup/contents.lr @@ -1,5 +1,3 @@ _model: redirect --- -old_path: /signup/ ---- new_path: /community/keep-informed/ diff --git a/content/batavia/contents.lr b/content/batavia/contents.lr index 72a74c8742..2630f46024 100644 --- a/content/batavia/contents.lr +++ b/content/batavia/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /batavia/ ---- new_path: /project/projects/bridges/batavia/ --- _discoverable: no diff --git a/content/bee/chat/contents.lr b/content/bee/chat/contents.lr index bd4993ac95..8408af0f0f 100644 --- a/content/bee/chat/contents.lr +++ b/content/bee/chat/contents.lr @@ -1,5 +1,3 @@ _model: redirect --- -old_path: /chat/ ---- new_path: https://discord.gg/AjYYm8cyQM diff --git a/content/bee/join/contents.lr b/content/bee/join/contents.lr index 7b3dead082..e77c9c4b65 100644 --- a/content/bee/join/contents.lr +++ b/content/bee/join/contents.lr @@ -1,5 +1,5 @@ _model: redirect --- -old_path: /join/ +new_path: /membership/ --- -new_path: /contributing/membership/ +_discoverable: no diff --git a/content/bee/podium/contents.lr b/content/bee/podium/contents.lr index e144fbceb7..a0a2e5944a 100644 --- a/content/bee/podium/contents.lr +++ b/content/bee/podium/contents.lr @@ -1,5 +1,5 @@ _model: redirect --- -old_path: /podium/ +new_path: /project/applications/podium/ --- -new_path: /project/projects/applications/podium/ +_discoverable: no diff --git a/content/bee/signup/contents.lr b/content/bee/signup/contents.lr index e232e79584..07f61fc429 100644 --- a/content/bee/signup/contents.lr +++ b/content/bee/signup/contents.lr @@ -1,5 +1,3 @@ _model: redirect --- -old_path: /signup/ ---- new_path: /community/keep-informed/ diff --git a/content/beefore/contents.lr b/content/beefore/contents.lr index d79d7e9ff4..6bd4f4a6b3 100644 --- a/content/beefore/contents.lr +++ b/content/beefore/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /beefore/ ---- -new_path: /project/projects/tools/beefore/ +new_path: /project/attic/beefore/ --- _discoverable: no diff --git a/content/beekeeper/contents.lr b/content/beekeeper/contents.lr index 9bdef32e6d..2a3c534b9f 100644 --- a/content/beekeeper/contents.lr +++ b/content/beekeeper/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /beekeeper/ ---- -new_path: /project/projects/tools/beekeeper/ +new_path: /project/attic/beekeeper/ --- _discoverable: no diff --git a/content/briefcase/contents.lr b/content/briefcase/contents.lr index 6425e46151..18a5ea6f7d 100644 --- a/content/briefcase/contents.lr +++ b/content/briefcase/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /briefcase/ ---- -new_path: /project/projects/tools/briefcase/ +new_path: /project/briefcase/ --- _discoverable: no diff --git a/content/bugjar/contents.lr b/content/bugjar/contents.lr index 032d08a425..2709e197b9 100644 --- a/content/bugjar/contents.lr +++ b/content/bugjar/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /bugjar/ ---- -new_path: /project/projects/tools/bugjar/ +new_path: /project/applications/bugjar/ --- _discoverable: no diff --git a/content/cassowary/contents.lr b/content/cassowary/contents.lr index a176c9edda..7e92f6fa88 100644 --- a/content/cassowary/contents.lr +++ b/content/cassowary/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /cassowary/ ---- -new_path: /project/projects/attic/cassowary/ +new_path: /project/attic/cassowary/ --- _discoverable: no diff --git a/content/colosseum/contents.lr b/content/colosseum/contents.lr index b5c2bc2f39..600f91238e 100644 --- a/content/colosseum/contents.lr +++ b/content/colosseum/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /colosseum/ ---- -new_path: /project/projects/libraries/colosseum/ +new_path: /project/utilities/colosseum/ --- _discoverable: no diff --git a/content/community/behavior/code-of-conduct/contents.lr b/content/community/behavior/code-of-conduct/contents.lr index dbec7f9d38..129ddaabf5 100644 --- a/content/community/behavior/code-of-conduct/contents.lr +++ b/content/community/behavior/code-of-conduct/contents.lr @@ -23,14 +23,18 @@ By adopting this Code of Conduct, project maintainers commit themselves to fairl This code of conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. -To report an issue, please see `Making a CoC Complaint `__ - +If you feel the code of conduct has been violated, please `report the incident `__ to the Beeware core team. --- summary: All participants in the BeeWare community are expected to adhere to a Code of Conduct --- gutter: +`Making a Code of Conduct Report `__ +----------------------------------------------------------------------------------------------- + +Has something or someone in the BeeWare community made you feel uncomfortable? Here's how to report the situation. + Credits ------------- diff --git a/content/community/behavior/making-a-coc-complaint/contents.lr b/content/community/behavior/making-a-coc-complaint/contents.lr index afa0ac641e..5d1fa95dd4 100644 --- a/content/community/behavior/making-a-coc-complaint/contents.lr +++ b/content/community/behavior/making-a-coc-complaint/contents.lr @@ -1,74 +1,5 @@ -_model: page +_model: redirect --- -title: Making a CoC complaint +new_path: /community/behavior/making-a-coc-report/ --- -body: - -If you believe someone is violating the `BeeWare Project Code of Conduct `__ we ask that you report it to the BeeWare Project by emailing one or more of the project maintainers (listed in the sidebar). All reports will be kept confidential. In some cases we may determine that a public statement will need to be made. If that's the case, the identities of all victims and reporters will remain confidential unless those individuals instruct us otherwise. - -**If you believe anyone is in physical danger, please notify appropriate law enforcement first**. If you are unsure what law enforcement agency is appropriate, please include this in your report and we will attempt to notify them. - -In your report please include: - - * **Your contact info** (so we can get in touch with you if we need to follow up) - * **Names (real, nicknames, or pseudonyms) of any individuals involved**. If there were other witnesses besides you, please try to include them as well. - * **When and where the incident occurred**. Please be as specific as possible. - * **Your account of what occurred**. If there is a publicly available record (e.g. a mailing list archive or a public IRC logger) please include a link. - * **Any extra context** you believe existed for the incident. - * If you believe this incident is ongoing. - * If you believe any member of the core team has a conflict of interest in adjudicating the incident. - * What, if any, corrective response you believe would be appropriate. - * Any other information you believe we should have. - -Core team members are obligated to maintain confidentiality with regard to the reporter and details of an incident. - -What happens after you file a report? -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -You will receive an email acknowledging receipt of your complaint. We promise to acknowledge receipt within 24 hours (and will aim for much quicker than that). - -The core team will immediately meet to review the incident and determine: - - * What happened. - * Whether this event constitutes a code of conduct violation. - * Who the bad actor was. - * Whether this is an ongoing situation, or if there is a threat to anyone's physical safety. - * If this is determined to be an ongoing incident or a threat to physical safety, the working groups' immediate priority will be to protect everyone involved. This means we may delay an "official" response until we believe that the situation has ended and that everyone is physically safe. - -If a member of the core team is one of the named parties, they will not be included in any discussions, and will not be provided with any confidential details from the reporter. - -If anyone on the core team believes they have a conflict of interest in adjudicating on a reported issue, they will inform the other core team members, and recuse themselves from any discussion about the issue. Following this declaration, they will not be provided with any confidential details from the reporter. - -Once the working group has a complete account of the events they will make a decision as to how to response. Responses may include: - -* Nothing (if we determine no violation occurred). -* A private reprimand from the working group to the individual(s) involved. -* A public reprimand. -* An imposed vacation (i.e. asking someone to "take a week off" from a mailing list or IRC). -* A permanent or temporary ban from some or all BeeWare spaces (GitHub repositories, Discord, etc.) -* A request for a public or private apology. - -We'll respond within one week to the person who filed the report with either a resolution or an explanation of why the situation is not yet resolved. - -Once we've determined our final action, we'll contact the original reporter to let them know what action (if any) we'll be taking. We'll take into account feedback from the reporter on the appropriateness of our response, but we don't guarantee we'll act on it. - -Finally, depending on the specifics of the incident and the potential for ongoing harm, the core team may choose to make a public report of the incident on `The Buzz`_, the BeeWare blog. - -.. _The Buzz: /news/buzz/ - ---- -summary: Has something or someone in the BeeWare made you feel uncomfortable? Here's how to report the problem. ---- -gutter: - - -Reporting contacts -~~~~~~~~~~~~~~~~~~~ -* `Russell Keith-Magee `__ -* `Katie McLaughlin `__ -* `Philip James `__ - -Credits -~~~~~~~ -This reporting guide draws heavily from the `Django Software Foundation Code of Conduct Reporting Guide `__. The BeeWare Project thanks the DSF, and the DSF Code of Conduct Committee for their work in drafting this document. - +_discoverable: no diff --git a/content/community/behavior/making-a-coc-complaint/contents+de.lr b/content/community/behavior/making-a-coc-report/contents+de.lr similarity index 100% rename from content/community/behavior/making-a-coc-complaint/contents+de.lr rename to content/community/behavior/making-a-coc-report/contents+de.lr diff --git a/content/community/behavior/making-a-coc-complaint/contents+es.lr b/content/community/behavior/making-a-coc-report/contents+es.lr similarity index 100% rename from content/community/behavior/making-a-coc-complaint/contents+es.lr rename to content/community/behavior/making-a-coc-report/contents+es.lr diff --git a/content/community/behavior/making-a-coc-complaint/contents+pt.lr b/content/community/behavior/making-a-coc-report/contents+pt.lr similarity index 100% rename from content/community/behavior/making-a-coc-complaint/contents+pt.lr rename to content/community/behavior/making-a-coc-report/contents+pt.lr diff --git a/content/community/behavior/making-a-coc-report/contents.lr b/content/community/behavior/making-a-coc-report/contents.lr new file mode 100644 index 0000000000..e3326c35c0 --- /dev/null +++ b/content/community/behavior/making-a-coc-report/contents.lr @@ -0,0 +1,76 @@ +_model: page +--- +title: Making a CoC Report +--- +body: + +If you believe someone is violating the `BeeWare Project Code of Conduct `__ we ask that you report it to the BeeWare Project by emailing one or more of the project maintainers (listed in the sidebar). All reports will be kept confidential. In some cases we may determine that a public statement will need to be made. If that's the case, the identities of all victims and reporters will remain confidential unless those individuals instruct us otherwise. + +**If you believe anyone is in physical danger, please notify appropriate law enforcement first**. If you are unsure what law enforcement agency is appropriate, please include this in your report and we will attempt to notify them. + +In your report please include: + + * **Your contact info** (so we can get in touch with you if we need to follow up) + * **Names (real, nicknames, or pseudonyms) of any individuals involved**. If there were other witnesses besides you, please try to include them as well. + * **When and where the incident occurred**. Please be as specific as possible. + * **Your account of what occurred**. If there is a publicly available record (e.g. a mailing list archive or a public IRC logger) please include a link. + * **Any extra context** you believe existed for the incident. + * If you believe this incident is ongoing. + * If you believe any member of the core team has a conflict of interest in adjudicating the incident. + * What, if any, corrective response you believe would be appropriate. + * Any other information you believe we should have. + +Core team members are obligated to maintain confidentiality with regard to the reporter and details of an incident. + +What happens after you file a report? +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +You will receive an email acknowledging receipt of your complaint. We promise to acknowledge receipt within 24 hours (and will aim for much quicker than that). + +The core team will immediately meet to review the incident and determine: + + * What happened. + * Whether this event constitutes a code of conduct violation. + * Who the bad actor was. + * Whether this is an ongoing situation, or if there is a threat to anyone's physical safety. + * If this is determined to be an ongoing incident or a threat to physical safety, the working groups' immediate priority will be to protect everyone involved. This means we may delay an "official" response until we believe that the situation has ended and that everyone is physically safe. + +If a member of the core team is one of the named parties, they will not be included in any discussions, and will not be provided with any confidential details from the reporter. + +If anyone on the core team believes they have a conflict of interest in adjudicating on a reported issue, they will inform the other core team members, and recuse themselves from any discussion about the issue. Following this declaration, they will not be provided with any confidential details from the reporter. + +Once the working group has a complete account of the events they will make a decision as to how to response. Responses may include: + +* Nothing (if we determine no violation occurred). +* A private reprimand from the working group to the individual(s) involved. +* A public reprimand. +* An imposed vacation (i.e. asking someone to "take a week off" from a mailing list or IRC). +* A permanent or temporary ban from some or all BeeWare spaces (GitHub repositories, Discord, etc.) +* A request for a public or private apology. + +We'll respond within one week to the person who filed the report with either a resolution or an explanation of why the situation is not yet resolved. + +Once we've determined our final action, we'll contact the original reporter to let them know what action (if any) we'll be taking. We'll take into account feedback from the reporter on the appropriateness of our response, but we don't guarantee we'll act on it. + +Finally, depending on the specifics of the incident and the potential for ongoing harm, the core team may choose to make a public report of the incident on `The Buzz`_, the BeeWare blog. + +.. _The Buzz: /news/buzz/ + +--- +summary: Has something or someone in the BeeWare community made you feel uncomfortable? Here's how to report the situation. +--- +gutter: + + +Reporting contacts +~~~~~~~~~~~~~~~~~~~ +* `Russell Keith-Magee `__ +* `Katie McLaughlin `__ +* `Philip James `__ + +Credits +~~~~~~~ +This reporting guide draws heavily from the `Django Software Foundation Code of Conduct Reporting Guide `__. The BeeWare Project thanks the DSF, and the DSF Code of Conduct Committee for their work in drafting this document. + +--- +hide_from_index: diff --git a/content/community/contents.lr b/content/community/contents.lr index 4fa85d3e8b..4f0d2cd1e6 100644 --- a/content/community/contents.lr +++ b/content/community/contents.lr @@ -7,6 +7,11 @@ title: Community sort_key: 3 --- summary: It's a small world, after all... +--- +body: + + + --- gutter: diff --git a/content/contributing/core-team/contents+es.lr b/content/community/core-team/contents+es.lr similarity index 100% rename from content/contributing/core-team/contents+es.lr rename to content/community/core-team/contents+es.lr diff --git a/content/contributing/core-team/contents+pt.lr b/content/community/core-team/contents+pt.lr similarity index 100% rename from content/contributing/core-team/contents+pt.lr rename to content/community/core-team/contents+pt.lr diff --git a/content/contributing/core-team/contents+zh_TW.lr b/content/community/core-team/contents+zh_TW.lr similarity index 100% rename from content/contributing/core-team/contents+zh_TW.lr rename to content/community/core-team/contents+zh_TW.lr diff --git a/content/community/core-team/contents.lr b/content/community/core-team/contents.lr new file mode 100644 index 0000000000..c9db2a88db --- /dev/null +++ b/content/community/core-team/contents.lr @@ -0,0 +1,138 @@ +_model: page +--- +title: Core Team, and Responsibilities +--- +sort_key: 3 +--- +summary: What is the core team, and what do they do? +--- +body: + +Those busy bees on the `Core Team `_ have a number of +responsibilities to keep the hive that is BeeWare moving. This is an evolving +project, so this page is subject to change. + +These include, but aren't limited to, responding to issues, reviewing and +merging code, mentoring new contributors, and architecture of the BeeWare +project as a whole. + + +There are people we trust to make code decisions; there are people we trust to +make code and organizational decisions; and there is a person who guides the +vision of the whole organization, and is entrusted to make a final decision +if the community cannot arrive at a consensus. + +These levels can be described as follows: + +Bee, or Worker Bee: + - Any member of the BeeWare community. Given we work in the open on GitHub, + anyone can suggest changes to the code and have their code merged. The only + limit to your ability to contribute is having your work merged by a team member + with the rights to do so. + +Apiarist: + - A bee who has been recognised as a trusted contributor. These bees have + demonstrated ability in relation to a specific part of the BeeWare project over + a period of time. This could be on a technical level (JavaScript, Python, + Objective-C expertise; GTK+, macOS knowledge), or on another level (community + management, code review). Apiarists may also have the commit bit for the project + where their expertise is recognized. + +Senior Apiarists: + - Apiarists with elevated access in GitHub, and also an added level of + responsibility to oversee the project as a whole. They are able to make + architectural decisions, but ultimately answer to the BDFN. + +Founding Apiarist: `Russell Keith-Magee `_ + - The man that first stood on a hill and spied a yak that needed shaving + - This role never changes, and continues ad infinitum + - This role is different to the BDFN role + +Bee-nevolent Dictator for Now (BDFN): `Russell Keith-Magee `_ + - A take on `Benevolent Dictator for Life + `_, + responsibility for the direction and decisions of the project ultimately + lies with the BFDN. The use of "For Now" as opposed to "For Life" is + reference to the Django theme of not subjecting the responsibilities + of core maintainer for a person's entire natural life. Life exists + outside open source, and code/life balance and general well-being + is a very important thing to keep in mind. + +Guidelines (not actual rules) +------------------------------ + +As with any project with more than one person with commit rights, there are a +number of general guidelines that the team should follow: + + +* **Be a good representation of the project to the wider community** + +* **Treat every enquiry and contribution to any BeeWare project with respect** + +* Assume everyone has good intentions, even if they haven't chosen their + words well + +* Assume that if someone has done something the "wrong" way, it's because + we've failed in communicating process + +* Assume any expression of anger or frustration comes from a genuine place of + wanting to use a BeeWare tool/library + +* Encourage other members of the community to reflect these ideals in their + own communications, both inside and outside the BeeWare community + +* No Apiarist should commit their own code + + * Exception: "Something is very broken and needs to be fixed now" + + * Exception: BDFN (this may change in the future) + +* All code submitted for review by a core team member should be reviewed by another team member + + * Exception: BDFN (this may change in the future) + +* All code should pass Continuous Integration tests before being merged + + * Exception: code that is known to be broken and needs to be committed for other reasons + + * Exception: code in a repo with insufficient CI tests + + * Exception: Working and committed is better than perfect and not + +* Acceptance processes should be automated wherever possible + + * This means tests, linting, spell checking, coverage, and more + +Becoming an Apiarist +--------------------- + +Introduction of a new Apiarist into the team is at the sole discretion of the +existing Core Team. While there are not currently any solid rules to this, in +general, someone will be invited to be an Apiarist on a BeeWare project if they +have demonstrated solid contributions to the project. This can also be extended +to someone with specific domain knowledge (for example, iOS/macOS) which might +be lacking in the existing team. It also doesn't have to be based on commits. +Anyone who is able to demonstrate a vested interest in the project in general +may ask to be given permission to commit to the project. + +All new apiarists will be 'inducted' (for lack of a better word) in the core +values and guidelines of the project. A summary of the core values can be found +`on the about page `_. Anyone who joins the +team will be expected to uphold those values, and contribute to discussions +about evolving those values over time. + +Any Apiarist, new or old, isn't expected to be the sole maintainer of any one +thing. There are many apiarists, and many more beside who can offer help, advice +and mentorship. + +--- +gutter: + +"Commit bit"? +-------------- + +In Unix systems, a single bit in a file is used to denote permission to execute +a file. In source control systems, a similar bit exists to denote the ability to +merge code. To say someone has the "commit bit" means they have write-access to +a code base. In GitHub terms, this means they have the ability to merge Pull +Requests and commit code directly to the project. diff --git a/content/community/team/cflee/contents.lr b/content/community/team/cflee/contents.lr index 2b16941183..4f1bcc7ae0 100644 --- a/content/community/team/cflee/contents.lr +++ b/content/community/team/cflee/contents.lr @@ -1,24 +1,5 @@ -name: Chiang Fong Lee +_model: redirect --- -description: - -Chiang Fong has been pretending to be a systems administrator since the Mandriva Linux days, and has recently moved into acting like he knows how to write software. - -When not poking at code to de-stress, he spends his time fiddling with fountain pens and mechanical keyboards. -He has yet to learn the lesson of not mixing inky fingers with pretty keycaps. +new_path: /about/team/cflee/ --- -email: myself@cflee.net ---- -github_handle: cflee ---- -twitter_handle: cflee ---- -mastodon_handle: @cflee@hachyderm.io ---- -join_date: 2017-03-11 ---- -summary: cflee ---- -superpower: voc ---- -emeritus_date: 2020-06-01 +_discoverable: no diff --git a/content/community/team/contents.lr b/content/community/team/contents.lr index 5889304685..8f79d3aae0 100644 --- a/content/community/team/contents.lr +++ b/content/community/team/contents.lr @@ -1,9 +1,5 @@ -_model: team +_model: redirect --- -sort_key: 2 +new_path: /about/team/ --- -title: The Bee Team ---- -summary: The core team behind BeeWare development ---- -body: So who are the people behind BeeWare? Well, there's a huge group of contributors, but the project is managed by the Bee Team. +_discoverable: no diff --git a/content/community/team/danyeaw/contents.lr b/content/community/team/danyeaw/contents.lr index e9f9bcbbc6..2b12e28088 100644 --- a/content/community/team/danyeaw/contents.lr +++ b/content/community/team/danyeaw/contents.lr @@ -1,24 +1,5 @@ -name: Dan Yeaw +_model: redirect --- -join_date: 2018-02-28 +new_path: /about/team/danyeaw/ --- -twitter_handle: danyeaw ---- -mastodon_handle: @danyeaw@fosstodon.org ---- -description: - -Dan leads teams to design safety in to complex automotive and mobility systems, and dreams of using BeeWare tools to help model these systems. - -When not hacking on open source projects, Dan likes to hang with his kids, brew beer, and play soccer. ---- -github_handle: danyeaw ---- -email: dan@yeaw.me ---- -superpower: toga, lektor ---- -summary: Submarine Bubblehead ---- -emeritus_date: 2021-05-01 - +_discoverable: no diff --git a/content/community/team/elias/contents.lr b/content/community/team/elias/contents.lr index e41e258347..c52c444a1f 100644 --- a/content/community/team/elias/contents.lr +++ b/content/community/team/elias/contents.lr @@ -1,19 +1,5 @@ -name: Elias Dorneles +_model: redirect --- -description: - -Elias is a certified yak-shaver. He likes to fiddle with Python and open source stuff. At home, he likes to read, cook and to play Beatles songs on his guitar. - -Elias gets by with a little help from his friends. +new_path: /about/team/elias/ --- -email: eliasdorneles@gmail.com ---- -github_handle: eliasdorneles ---- -join_date: 2017-03-01 ---- -summary: Yak-shaver ---- -superpower: voc, android ---- -emeritus_date: 2020-06-03 +_discoverable: no diff --git a/content/community/team/flowerncsu/contents.lr b/content/community/team/flowerncsu/contents.lr index 2094c65d6d..c1a6f27621 100644 --- a/content/community/team/flowerncsu/contents.lr +++ b/content/community/team/flowerncsu/contents.lr @@ -1,17 +1,5 @@ -description: Charlotte has been coding for more years than she likes to admit, and has a passion for building cool things and helping other people learn how to build cool things. She is among the organizers of PyLadies RDU, and can often be found making things out of yarn when not making things out of code. +_model: redirect --- -name: Charlotte Mays +new_path: /about/team/flowerncsu/ --- -twitter_handle: charlottecodes ---- -mastodon_handle: @charlotte@hachyderm.io ---- -summary: ---- -join_date: 2017-08-17 ---- -github_handle: flowerncsu ---- -email: charlotte@charlottemays.me ---- -superpower: cricket +_discoverable: no diff --git a/content/community/team/freakboy3742/contents.lr b/content/community/team/freakboy3742/contents.lr index 68cf8af640..a69079c5b9 100644 --- a/content/community/team/freakboy3742/contents.lr +++ b/content/community/team/freakboy3742/contents.lr @@ -1,17 +1,5 @@ -description: Dr Russell Keith-Magee is the founder of the BeeWare project. He joined the Django core team since 2006, and for 5 years, was President of the Django Software Foundation. When he's not contributing to open source, he's a Principal Software Engineer in the Open Source group at Anaconda. +_model: redirect --- -name: Russell Keith-Magee +new_path: /about/team/freakboy3742/ --- -twitter_handle: freakboy3742 ---- -summary: Founding Apiarist ---- -join_date: 2013-09-05 ---- -github_handle: freakboy3742 ---- -email: russell@beeware.org ---- -superpower: bdfn ---- -mastodon_handle: @freakboy3742@cloudisland.nz +_discoverable: no diff --git a/content/community/team/glasnt/contents.lr b/content/community/team/glasnt/contents.lr index 440226726e..85baad2aa5 100644 --- a/content/community/team/glasnt/contents.lr +++ b/content/community/team/glasnt/contents.lr @@ -1,21 +1,5 @@ -name: Katie McLaughlin +_model: redirect --- -join_date: 2016-04-02 +new_path: /about/team/glasnt/ --- -twitter_handle: glasnt ---- -mastodon_handle: @glasnt@cloudisland.nz ---- -description: - -Katie has worn many different hats over the years. She has previously been a software developer for many languages, systems administrator for multiple operating systems, and speaker on many different topics. - -When she's not changing the world, she enjoys cooking, making tapestries, and seeing just how well various application stacks handle emoji. ---- -github_handle: glasnt ---- -email: katie@beeware.org ---- -superpower: batavia, lektor, senior ---- -summary: Tasmanian Devil Wrangler +_discoverable: no diff --git a/content/community/team/hawkowl/contents.lr b/content/community/team/hawkowl/contents.lr index a98d88a3ee..e6bc3d7b92 100644 --- a/content/community/team/hawkowl/contents.lr +++ b/content/community/team/hawkowl/contents.lr @@ -1,21 +1,5 @@ -description: - -Amber Brown pretends to be an owl on the internet. -When she's not releasing or working on Twisted, she works on software for various commercial and non-profit companies. -She's so good at talking endlessly about Twisted that Russell even once invited her to keynote on it. - -Also, she likes people tweeting pictures of owls at her. +_model: redirect --- -name: Amber Brown +new_path: /about/team/hawkowl/ --- -twitter_handle: hawkieowl ---- -summary: Owl-themed Toga Widget Simulator ---- -join_date: 2016-10-13 ---- -github_handle: hawkowl ---- -email: hawkowl@atleastfornow.net ---- -superpower: toga, lektor +_discoverable: no diff --git a/content/community/team/mhsmith/contents.lr b/content/community/team/mhsmith/contents.lr index b5dea33599..458729fd2f 100644 --- a/content/community/team/mhsmith/contents.lr +++ b/content/community/team/mhsmith/contents.lr @@ -1,13 +1,5 @@ -name: Malcolm Smith +_model: redirect --- -join_date: 2022-08-31 +new_path: /about/team/mhsmith/ --- -twitter_handle: ---- -description: Malcolm is the creator of Chaquopy, which aims to make it as easy as possible to use Python in Android apps. With BeeWare, he's now looking forward to expanding that mission to all desktop and mobile platforms. ---- -github_handle: mhsmith ---- -email: smith@chaquo.com ---- -superpower: android +_discoverable: no diff --git a/content/community/team/obulat/contents.lr b/content/community/team/obulat/contents.lr index a0611ad39d..4c3415bac5 100644 --- a/content/community/team/obulat/contents.lr +++ b/content/community/team/obulat/contents.lr @@ -1,17 +1,5 @@ -name: Olga Bulat +_model: redirect --- -join_date: 2018-03-05 +new_path: /about/team/obulat/ --- -twitter_handle: bulat_olga ---- -description: - -Olga is a python and BeeWare enthusiast, also interested in NLP, geography and languages. - -She also enjoys hanging out with kids. ---- -github_handle: obulat ---- -email: obulat@gmail.com ---- -superpower: toga +_discoverable: no diff --git a/content/community/team/phildini/contents.lr b/content/community/team/phildini/contents.lr index 250e77410d..9596091889 100644 --- a/content/community/team/phildini/contents.lr +++ b/content/community/team/phildini/contents.lr @@ -1,17 +1,5 @@ -name: Philip James +_model: redirect --- -description: Philip writes code for computers and for humans. His first computing love is Python, but is too often forced to write JavaScript and Swift. When he's not writing code for money or for Open Source or for his own crazy projects, he gives talks at conferences. Philip lives in Alameda, California with his wife and her cat. Philip believes in the web. +new_path: /about/team/phildini/ --- -join_date: 2016-06-03 ---- -summary: ---- -twitter_handle: phildini ---- -mastodon_handle: @phildini@phildini.net ---- -github_handle: phildini ---- -email: philip@beeware.org ---- -superpower: batavia, senior +_discoverable: no diff --git a/content/community/team/rmartin16/contents.lr b/content/community/team/rmartin16/contents.lr index 9921f9fa42..99fe887700 100644 --- a/content/community/team/rmartin16/contents.lr +++ b/content/community/team/rmartin16/contents.lr @@ -1,13 +1,5 @@ -name: Russell Martin +_model: redirect --- -join_date: 2022-08-31 +new_path: /about/team/rmartin16/ --- -twitter_handle: ---- -description: Russell is a tinkerer and aspiring creator. He fell in love with python years ago and wants to see apps built with it everywhere. If he isn't writing code, he's probably falling down a Wikipedia rabbit hole or playing sys admin to his bloated home lab. ---- -github_handle: rmartin16 ---- -email: rmartin16@gmail.com ---- -superpower: briefcase +_discoverable: no diff --git a/content/community/team/samschott/contents.lr b/content/community/team/samschott/contents.lr index 011eae5593..f371a18f0a 100644 --- a/content/community/team/samschott/contents.lr +++ b/content/community/team/samschott/contents.lr @@ -1,18 +1,5 @@ -name: Sam Schott +_model: redirect --- -description: Sam is a physicist and a software engineer. He got introduced -to Python while automating data acquisition in the lab and soon realised -that he enjoyed writing and sharing code. When away from a computer, -you will find him hiking or sailing along the English coast. +new_path: /about/team/samschott/ --- -join_date: 2021-07-29 ---- -summary: ---- -twitter_handle: ---- -github_handle: samschott ---- -email: sam.schott@outlook.com ---- -superpower: toga +_discoverable: no diff --git a/content/community/team/saroad2/contents.lr b/content/community/team/saroad2/contents.lr index 9e7fa17424..cd7c0ac323 100644 --- a/content/community/team/saroad2/contents.lr +++ b/content/community/team/saroad2/contents.lr @@ -1,15 +1,5 @@ -name: Sagi Shadur +_model: redirect --- -description: Sagi Shadur is a software engineer and a mathematician. He has a B.Sc. in mathematics and these days he's on his way for a second B.Sc. in physics. He's also a poet who published two books in Hebrew, "Mountains and Valleys" and "The Emissary". +new_path: /about/team/saroad2/ --- -join_date: 2020-05-31 ---- -summary: ---- -twitter_handle: ---- -github_handle: saroad2 ---- -email: saroad2@gmail.com ---- -superpower: toga +_discoverable: no diff --git a/content/community/team/swenson/contents.lr b/content/community/team/swenson/contents.lr index 7ac92c5ed1..283ff7142e 100644 --- a/content/community/team/swenson/contents.lr +++ b/content/community/team/swenson/contents.lr @@ -1,26 +1,5 @@ -description: - -Dr. Christopher Swenson is a software engineer, computer scientist, and occasional mathematician. -Swenson has been working with Python since about 2004, and involved in open source since before knowing what open source really was. -Swenson likes sorting a lot, and maintains an open source high-performance C sorting library. -Swenson has sold their labor to companies big and small, such as Simple, Google, and the US Government, and wrote a book on cryptography. -Swenson is an organizer of PyDX. -Swenson is a cupcake. +_model: redirect --- -name: Christopher Swenson +new_path: /about/team/swenson/ --- -twitter_handle: chris_swenson ---- -mastodon_handle: @chris_swenson@tweets.icu ---- -summary: Cupcake ---- -join_date: 2016-09-07 ---- -github_handle: swenson ---- -email: swenson@beeware.org ---- -superpower: batavia ---- -emeritus_date: 2021-05-01 +_discoverable: no diff --git a/content/comp/contents.lr b/content/comp/contents.lr index 05409e366a..7d31e2cd99 100644 --- a/content/comp/contents.lr +++ b/content/comp/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /comp/ ---- new_path: https://docs.google.com/forms/d/e/1FAIpQLScnKT4TyyV_iKSeOW1rQwCvKYT7nNMqZC_V32Obtx_HOnfZQw/viewform --- _discoverable: no diff --git a/content/contact/contents.lr b/content/contact/contents.lr index 1789e2fe52..be883b294c 100644 --- a/content/contact/contents.lr +++ b/content/contact/contents.lr @@ -1,23 +1,5 @@ -_model: page +_model: redirect --- -title: Contact +new_path: /about/contact/ --- -summary: Looking to speak to someone from the BeeWare project? Here's how. ---- -sort_key: 5 ---- -incomplete: no ---- -body: - - -If you have a general question about BeeWare usage, we have a number of `community communication channels `__ where you can ask for assistance. - -If you need advice on how to contribute, or you have questions about the management of the project, anyone on the `Core Team `__ will be able to help you. - -If you want to report a security problem with one of the BeeWare tools, please contact the `Core Team `__. - -If you have had a bad experience in a BeeWare community space, or want to report a behaviour problem with someone who is a member of the BeeWare community, the `Core Team `__ will be happy to manage your report in accordance with our `Code of Conduct reporting guide `__. - -For all other enquiries, please contact Founding Apiarist `Russell Keith-Magee `__. - +_discoverable: no diff --git a/content/contact/media/contents.lr b/content/contact/media/contents.lr index d84ac88d07..e387e78373 100644 --- a/content/contact/media/contents.lr +++ b/content/contact/media/contents.lr @@ -1,82 +1,5 @@ -_model: page +_model: redirect --- -title: Media +new_path: /about/contact/media/ --- -body: - - -Short description -================= - -BeeWare is a collection of tools and libraries to aid in writing application user interfaces in Python. - -Long description -================ - -BeeWare is a collection of tools and libraries to aid in writing application user interfaces in Python. It enables developers to write applications for iPhone, Android, Linux, macOS and Windows that are indistinguishable from natively written applications. - - -Logos -===== - -BeeWare logo -~~~~~~~~~~~~ - -.. image:: /contact/media/beeware-150.png - :alt: BeeWare logo - -* `Small `__ -* `Medium `__ -* `Vector `__ - -BeeWare (wide) logo -~~~~~~~~~~~~~~~~~~~ - -.. image:: /contact/media/beeware-wide-143.png - :alt: BeeWare logo (wide) - -* `Small `__ -* `Medium `__ -* `Large `__ -* `Vector `__ - -BeeWare Enthusiasts logo -~~~~~~~~~~~~~~~~~~~~~~~~ - -.. image:: /contact/media/beeware-enthusiasts-150.png - :alt: BeeWare Enthusiasts logo - -* `Small `__ -* `Medium `__ -* `Large `__ -* `Vector `__ - -Brutus the Bee -~~~~~~~~~~~~~~ - -.. image:: /contact/media/brutus-128.png - :alt: Brutus the Bee - -* `Small `__ -* `Medium `__ -* `Large `__ -* `X-large `__ -* `Vector `__ - ---- -summary: Are you from a media organization and want to write something about BeeWare? Here are some resources you may find helpful. ---- -incomplete: no ---- -gutter: - -Contact -======= - -For all media enquiries, please contact: - - * **Dr Russell Keith-Magee**, Founding Apiarist: `russell@beeware.org `__. - * **Philip James**, Apiarist: `philip@beeware.org `__. - ---- -sort_key: 2 +_discoverable: no diff --git a/content/contents.lr b/content/contents.lr index 5149f5a6e6..6e0b01b842 100644 --- a/content/contents.lr +++ b/content/contents.lr @@ -4,7 +4,7 @@ _template: home.html --- title: Write once. Deploy everywhere. --- -summary: +summary: --- description: Write your apps in Python and release them on iOS, Android, Windows, MacOS, Linux, Web, and tvOS using rich, native user interfaces. Multiple apps, one codebase, with a fully native user experience on every platform. --- @@ -15,7 +15,7 @@ label: Take the Tutorial ---- link: /project/using/ ---- -icon: +icon: ---- type: primary ---- @@ -27,7 +27,7 @@ label: I Want To Contribute ---- link: /contributing/ ---- -icon: +icon: ---- type: primary ---- @@ -37,24 +37,24 @@ is_block: no #### button-block #### label: Donate and Support Us! ---- -link: /contributing/membership/ +link: /membership/ ---- -icon: +icon: ---- type: success ---- size: lg ---- -is_block: +is_block: --- body: #### text-block #### title: ### One codebase. Multiple apps. ---- -text: BeeWare allows you to write your app in Python and release it on multiple platforms. No need to rewrite the app in multiple programming languages. It means **no issues** with build tools, environments, compatibility, etc. +text: BeeWare allows you to write your app in Python and release it on multiple platforms. No need to rewrite the app in multiple programming languages. It means **no issues** with build tools, environments, compatibility, etc. ---- -image: +image: ---- image_alignment: right #### text-block #### @@ -118,9 +118,9 @@ title: Contribute! ---- text: If all this sounds interesting, why not take a look at the `BeeWare projects `__ and see how you can use them when developing Python applications? Or, if you'd like to contribute, and you've never contributed to open source before, start with our `guide for first time contributors `__. If you feel ready to dive straight in, check out the `project pages `__ or our guide on `what you can do to help `__. ---- -image: +image: ---- -image_alignment: +image_alignment: #### button-block #### label: @@ -140,9 +140,9 @@ title: ### Stay in touch! ---- text: Follow `@beeware@fosstodon.org `__ on Mastodon, or `join the BeeWare enthusiasts mailing list `__ for updates, hints, tips, and announcements related to the project. ---- -image: +image: ---- -image_alignment: +image_alignment: #### button-block #### label: Keep in touch! ---- @@ -158,12 +158,12 @@ is_block: yes #### text-block #### title: ### Members ---- -text: BeeWare is supported by users like you! Every little bit helps: `click here to contribute `__. +text: BeeWare is supported by users like you! Every little bit helps: `click here to contribute `__. ---- -image: +image: ---- -image_alignment: +image_alignment: --- gutter_top: ### Many thanks to --- -gutter_bottom: ### [... and many more](/project/projects/) +gutter_bottom: ### [... and many more](/project/) diff --git a/content/contributing/challenge-coins/contents.lr b/content/contributing/challenge-coins/contents.lr index 2764279c4a..3ec4a6ef3e 100644 --- a/content/contributing/challenge-coins/contents.lr +++ b/content/contributing/challenge-coins/contents.lr @@ -1,6 +1,6 @@ _model: page --- -sort_key: 2 +sort_key: 4 --- title: Challenge Coins --- @@ -59,3 +59,5 @@ challenge coins. .. _MaxCDN: /community/members/maxcdn/ .. _Revolution Systems: /community/members/revsys/ .. _GitHub: /community/members/github/ +--- +hide_from_index: yes diff --git a/content/contributing/contents.lr b/content/contributing/contents.lr index 5e48e77700..f711dd26c8 100644 --- a/content/contributing/contents.lr +++ b/content/contributing/contents.lr @@ -2,8 +2,106 @@ _model: page --- title: Contributing --- -body: ---- summary: Want to contribute to BeeWare? Anyone is welcome to help out! --- sort_key: 4 +--- +body: + +There are many ways to help with BeeWare. + +`First-time Contributors`_ +--------------------------- + +If you're new to the project (or even entirely new to open source in general), +the best place to start is `here `__. Everyone +can contribute to open source, and we're here to show you how. + +.. _First-time Contributors: /contributing/how/first-time/ + +Code Contributions +------------------- + +Your code contributions are welcome! Please familiarize yourself with +our `Development Process `__. + +If you're looking for something to work on, and don't know where your +effort would be welcome, try looking at the ticket tracker for a project +of interest. There will usually be a couple of tickets with known +problems; any ticket is a candidate for being fixed. + +If you're a first time contributor, some tickets are also tagged as +`[good first issue] +`__. +These are special issues that have been selected because they're +relatively simple introductions to the project, and the BeeWare team +will mentor any first time contributor in committing a patch for +one of these issues. + +Platform Usage +--------------- + +Do you use Windows or various flavours of Linux? Are you able to install a +project or application on your system? Did you run into any problems? + +If so, please update the documentation to show how you were able to get it to +work, or log an issue if you've found a bug that you can't fix. + +Documentation +-------------- + +Is the documentation up to date? Do you think things could be worded +differently? Are there missing sections? Do you have an idea for a tutorial +that could be written? Please submit a pull request! + +Is there anything wrong or missing from this website? Please feel free to `make +edits `__ and submit a pull +request! + +Help translate and update this Website +--------------------------------------- + +Do you speak a language other than English, and would like to help others +have better access to BeeWare documentation? Visit the +`translations section `__ to learn how you +can contribute translations of BeeWare documentation. + +Build a real application! +-------------------------- + +Ultimately BeeWare is a set of tools for building applications. One of the best +ways to evaluate our progress is to see people build real-world applications +with the BeeWare tools. So if you've got an idea for an application you've +always wanted or needed - try to build it! + +In the process of building that application, you'll likely find bugs, missing +features, or friction in the development process. Those problems can then be +turned into bug reports or patches. + +Something else +--------------- + +If you've got your own idea for something, or if you don't see any +tickets, or you want to be mentored on a ticket, or you aren't sure how +to proceed, contact the project maintainers on +`Mastodon `__ or +`Discord `__. You can also find us `sprinting +`__ at various events, +where first-time contributors can earn a `challenge coin `__. +The project maintainers love collaborating, especially with new contributors, +and will gladly answer any questions or walk you through any problems you +may encounter. +--- +gutter: + +All Contributions Welcome +-------------------------- + +It's not just about code. A successful software project requires documentation, design +skills, feedback and bug reports. The BeeWare community acknowledges that all +contributions are important - not just the ones that come as a pull request on GitHub. + +* `First Time Contributors `__ +* `Development Process `__ +* `Translations `__ +* `Challenge Coins `__ diff --git a/content/contributing/core-team/contents.lr b/content/contributing/core-team/contents.lr index c9db2a88db..ed0e8263fb 100644 --- a/content/contributing/core-team/contents.lr +++ b/content/contributing/core-team/contents.lr @@ -1,138 +1,5 @@ -_model: page +_model: redirect --- -title: Core Team, and Responsibilities +new_path: /community/core-team/ --- -sort_key: 3 ---- -summary: What is the core team, and what do they do? ---- -body: - -Those busy bees on the `Core Team `_ have a number of -responsibilities to keep the hive that is BeeWare moving. This is an evolving -project, so this page is subject to change. - -These include, but aren't limited to, responding to issues, reviewing and -merging code, mentoring new contributors, and architecture of the BeeWare -project as a whole. - - -There are people we trust to make code decisions; there are people we trust to -make code and organizational decisions; and there is a person who guides the -vision of the whole organization, and is entrusted to make a final decision -if the community cannot arrive at a consensus. - -These levels can be described as follows: - -Bee, or Worker Bee: - - Any member of the BeeWare community. Given we work in the open on GitHub, - anyone can suggest changes to the code and have their code merged. The only - limit to your ability to contribute is having your work merged by a team member - with the rights to do so. - -Apiarist: - - A bee who has been recognised as a trusted contributor. These bees have - demonstrated ability in relation to a specific part of the BeeWare project over - a period of time. This could be on a technical level (JavaScript, Python, - Objective-C expertise; GTK+, macOS knowledge), or on another level (community - management, code review). Apiarists may also have the commit bit for the project - where their expertise is recognized. - -Senior Apiarists: - - Apiarists with elevated access in GitHub, and also an added level of - responsibility to oversee the project as a whole. They are able to make - architectural decisions, but ultimately answer to the BDFN. - -Founding Apiarist: `Russell Keith-Magee `_ - - The man that first stood on a hill and spied a yak that needed shaving - - This role never changes, and continues ad infinitum - - This role is different to the BDFN role - -Bee-nevolent Dictator for Now (BDFN): `Russell Keith-Magee `_ - - A take on `Benevolent Dictator for Life - `_, - responsibility for the direction and decisions of the project ultimately - lies with the BFDN. The use of "For Now" as opposed to "For Life" is - reference to the Django theme of not subjecting the responsibilities - of core maintainer for a person's entire natural life. Life exists - outside open source, and code/life balance and general well-being - is a very important thing to keep in mind. - -Guidelines (not actual rules) ------------------------------- - -As with any project with more than one person with commit rights, there are a -number of general guidelines that the team should follow: - - -* **Be a good representation of the project to the wider community** - -* **Treat every enquiry and contribution to any BeeWare project with respect** - -* Assume everyone has good intentions, even if they haven't chosen their - words well - -* Assume that if someone has done something the "wrong" way, it's because - we've failed in communicating process - -* Assume any expression of anger or frustration comes from a genuine place of - wanting to use a BeeWare tool/library - -* Encourage other members of the community to reflect these ideals in their - own communications, both inside and outside the BeeWare community - -* No Apiarist should commit their own code - - * Exception: "Something is very broken and needs to be fixed now" - - * Exception: BDFN (this may change in the future) - -* All code submitted for review by a core team member should be reviewed by another team member - - * Exception: BDFN (this may change in the future) - -* All code should pass Continuous Integration tests before being merged - - * Exception: code that is known to be broken and needs to be committed for other reasons - - * Exception: code in a repo with insufficient CI tests - - * Exception: Working and committed is better than perfect and not - -* Acceptance processes should be automated wherever possible - - * This means tests, linting, spell checking, coverage, and more - -Becoming an Apiarist ---------------------- - -Introduction of a new Apiarist into the team is at the sole discretion of the -existing Core Team. While there are not currently any solid rules to this, in -general, someone will be invited to be an Apiarist on a BeeWare project if they -have demonstrated solid contributions to the project. This can also be extended -to someone with specific domain knowledge (for example, iOS/macOS) which might -be lacking in the existing team. It also doesn't have to be based on commits. -Anyone who is able to demonstrate a vested interest in the project in general -may ask to be given permission to commit to the project. - -All new apiarists will be 'inducted' (for lack of a better word) in the core -values and guidelines of the project. A summary of the core values can be found -`on the about page `_. Anyone who joins the -team will be expected to uphold those values, and contribute to discussions -about evolving those values over time. - -Any Apiarist, new or old, isn't expected to be the sole maintainer of any one -thing. There are many apiarists, and many more beside who can offer help, advice -and mentorship. - ---- -gutter: - -"Commit bit"? --------------- - -In Unix systems, a single bit in a file is used to denote permission to execute -a file. In source control systems, a similar bit exists to denote the ability to -merge code. To say someone has the "commit bit" means they have write-access to -a code base. In GitHub terms, this means they have the ability to merge Pull -Requests and commit code directly to the project. +_discoverable: no diff --git a/content/contributing/how/first-time/contents+es.lr b/content/contributing/first-time/contents+es.lr similarity index 100% rename from content/contributing/how/first-time/contents+es.lr rename to content/contributing/first-time/contents+es.lr diff --git a/content/contributing/how/first-time/contents+fr.lr b/content/contributing/first-time/contents+fr.lr similarity index 100% rename from content/contributing/how/first-time/contents+fr.lr rename to content/contributing/first-time/contents+fr.lr diff --git a/content/contributing/how/first-time/contents+pt.lr b/content/contributing/first-time/contents+pt.lr similarity index 100% rename from content/contributing/how/first-time/contents+pt.lr rename to content/contributing/first-time/contents+pt.lr diff --git a/content/contributing/how/first-time/contents+zh_TW.lr b/content/contributing/first-time/contents+zh_TW.lr similarity index 100% rename from content/contributing/how/first-time/contents+zh_TW.lr rename to content/contributing/first-time/contents+zh_TW.lr diff --git a/content/contributing/first-time/contents.lr b/content/contributing/first-time/contents.lr index 6e34e969d8..be062dba73 100644 --- a/content/contributing/first-time/contents.lr +++ b/content/contributing/first-time/contents.lr @@ -1,7 +1,11 @@ -_model: redirect +_model: page --- -old_path: /contributing/first-time/ +sort_key: 1 --- -new_path: /contributing/how/first-time/ +title: First-time contributors --- -_discoverable: no +summary: Never contributed to open source before? Let us help you! +--- +_hidden: no +--- +hide_from_index: yes diff --git a/content/contributing/how/first-time/github-notifications-101/contents+es.lr b/content/contributing/first-time/github-notifications-101/contents+es.lr similarity index 100% rename from content/contributing/how/first-time/github-notifications-101/contents+es.lr rename to content/contributing/first-time/github-notifications-101/contents+es.lr diff --git a/content/contributing/first-time/github-notifications-101/contents.lr b/content/contributing/first-time/github-notifications-101/contents.lr new file mode 100644 index 0000000000..3cc527748c --- /dev/null +++ b/content/contributing/first-time/github-notifications-101/contents.lr @@ -0,0 +1,79 @@ +_model: page +--- +sort_key: 4 +--- +title: GitHub Notifications 101 +--- +summary: So you're now using GitHub, and it's notifying you. What now? +--- +body: + +Once you start contributing to BeeWare, GitHub is going to start notifying you +about things. + +This is a good thing! But it can get overwhelming; so, here are some tips to +help you battle the deluge. + +- If you prefer email notifications only, disable the "Web" notifications. + +- If you prefer not to get email notifications, disable the "Email" + notifications. + +If you do prefer email notifications, there are a bunch of ways you can handle +things. + +Repo settings +~~~~~~~~~~~~~~ + +Each repo has a number of notification settings: + +- Watching - you get notifications for __everything__. Any issue, any Pull + Request, any comment. This is helpful if you really really super duper care + about a repo + +- Not Watching - you will only get notifications if you're mentioned, or when + you're participating (say, on your own Pull Request) + +- Ignoring - never ever ever be notified. + +You can check what repos you're watching across all of GitHub from the +`watching page `_. + + +Email filters +~~~~~~~~~~~~~~~ + +GitHub emails are rich in information that can help you filter out what you +care about and what you don't. + +Emails will have the subject line of repo in question + +- For example, ``[beeware/batavia] Add a new function`` would be a notification + from the repo Batavia + +If you're mentioned by name: + +- the email will be cc'd to ``mention@noreply.github.com`` + +- the email will include the phrase ``You are receiving this because you were + mentioned.`` + +If you're only subscribed to a repo: + +- the email will be cc'd to ``subscribed@noreply.github.com`` + +Ssshhhhhh +~~~~~~~~~~~ + +If you want to mute a specific thread, you can click the 'Unsubscribe' button +on any issue or pull request. + +If you get email, you can click on the 'Mute this thread'. + +--- +gutter: + +GitHub has a bunch of resources to help you out with notifications. + +- `About Notifications `_ +- `Managing Notifications `_ diff --git a/content/contributing/how/first-time/github/contents+es.lr b/content/contributing/first-time/github/contents+es.lr similarity index 100% rename from content/contributing/how/first-time/github/contents+es.lr rename to content/contributing/first-time/github/contents+es.lr diff --git a/content/contributing/first-time/github/contents.lr b/content/contributing/first-time/github/contents.lr new file mode 100644 index 0000000000..f0b782f5fa --- /dev/null +++ b/content/contributing/first-time/github/contents.lr @@ -0,0 +1,163 @@ +_model: page +--- +sort_key: 3 +--- +title: Using GitHub +--- +summary: How to submit a pull request using GitHub +--- +body: + +This GitHub tutorial is lovingly based on the `DjangoGirls How To Contribute +Tutorial `__ which is available under +a Creative Commons Attribution-ShareAlike 4.0 license. + +For this tutorial, we will be using the `Briefcase +`__ repository as a basis for the links +and references. + +Getting started and prerequisites +---------------------------------- + +For contributing to BeeWare, the following is needed to get started: + +- a `GitHub account `__ +- in the case of complex edits familiarity with `Git command line + basics `__ or + familiarity with an app (`Windows and Mac `__) + to push your edits made on your computer to GitHub. + +Fork the repository +---------------------------------- + +First, fork the `Briefcase `__ repository +to your personal GitHub account: + +|Fork button| + +Editing Documentation +-------------------------------- + +Simple changes +---------------------------------- + +For simple changes like typo corrections you can use the GitHub online editor: + +- Open your local fork page on GitHub, +- go to *README.rst* file in any chapter, +- press the *Edit* icon (pen) + +and you can edit the chapter directly on github.com. + +|Edit button| + +RST syntax is used to edit the individual pages of the documentation. + +|GitHub editor| + +.. note:: + The above screenshot might not reflect what is currently in the GitHub + repository. The live repository will change from time to time. However, + the process for submitting pull requests remains the same. + +Save your changes and create a pull request as explained below. + +New code and complex changes +---------------------------------- + +For adding new code, extending classes, or complex changes, you need to get a +copy of the code to your local computer. + +Either use the GitHub app for your operating system (mentioned above) or +``git`` command line to get the repository locally. You get the repository +address from the front page of your own GitHub repository fork: + +:: + + git clone git@github.com:yourusername/briefcase.git + +Then, create a branch for your new changes to sit in. It helps to call +the branch something related to the changes you are going to make. + +:: + + git checkout -b update_documentation + +Make any changes in the code, and ensure they are tested, and saved +locally. + +Then commit the changes using ``git`` and push the changes to your +remote GitHub repository. + +Example: + +:: + + $ git status + On branch update_documentation + Untracked files: + (use "git add ..." to include in what will be committed) + + README.rst + + $ git add README.rst + + $ git commit -m "Update README.rst documentation for Briefcase" + [update_documentation fe36152] Added gitbook screenshot + 1 file changed, 0 insertions(+), 0 deletions(-) + create mode 100644 README.rst + + $ git push + Counting objects: 11, done. + Delta compression using up to 8 threads. + Compressing objects: 100% (5/5), done. + Writing objects: 100% (5/5), 266.37 KiB | 0 bytes/s, done. + Total 5 (delta 1), reused 0 (delta 0) + To git@github.com:yourusername/briefcase.git + b37ca59..fe36152 update_documentation -> update_documentation + +Making a pull request +---------------------------------- + +After you have finished your changes you need to create `a pull request +`__ on GitHub. BeeWare +will get notified about the pull request, review your changes, suggest any +corrections if needed and then *pull* your changes to the main version. + +In your own repository on GitHub press do *Compare & pull request* + +|image4| + +Fill in the information *why* this change is being made. The reviewer can see +the details of the actual change, so you don't need repeat the content of the +change. + +Then press *Create pull request*. + +GitHub emails will notify you for the follow up process. + +--------------- + +.. |Fork button| image:: /contributing/how/first-time/github/fork.png + :class: img-fluid + +.. |Edit button| image:: /contributing/how/first-time/github/edit.png + :class: img-fluid + +.. |GitHub editor| image:: /contributing/how/first-time/github/github_editor.png + :class: img-fluid + +.. |image4| image:: /contributing/how/first-time/github/pull_request.png + :class: img-fluid + +--- +gutter: + +Learn more about the git process +------------------------------------------ + +There are many useful resources to help you learn how to log issues and +raise Pull Requests in GitHub: + + * `Contributing to Open Source `__ + * `How to Fork a Repo `__ diff --git a/content/contributing/how/first-time/github/edit.png b/content/contributing/first-time/github/edit.png similarity index 100% rename from content/contributing/how/first-time/github/edit.png rename to content/contributing/first-time/github/edit.png diff --git a/content/contributing/how/first-time/github/fork.png b/content/contributing/first-time/github/fork.png similarity index 100% rename from content/contributing/how/first-time/github/fork.png rename to content/contributing/first-time/github/fork.png diff --git a/content/contributing/how/first-time/github/github_editor.png b/content/contributing/first-time/github/github_editor.png similarity index 100% rename from content/contributing/how/first-time/github/github_editor.png rename to content/contributing/first-time/github/github_editor.png diff --git a/content/contributing/how/first-time/github/pull_request.png b/content/contributing/first-time/github/pull_request.png similarity index 100% rename from content/contributing/how/first-time/github/pull_request.png rename to content/contributing/first-time/github/pull_request.png diff --git a/content/contributing/how/first-time/imposter-syndrome/contents+es.lr b/content/contributing/first-time/imposter-syndrome/contents+es.lr similarity index 100% rename from content/contributing/how/first-time/imposter-syndrome/contents+es.lr rename to content/contributing/first-time/imposter-syndrome/contents+es.lr diff --git a/content/contributing/how/first-time/imposter-syndrome/contents+pt.lr b/content/contributing/first-time/imposter-syndrome/contents+pt.lr similarity index 100% rename from content/contributing/how/first-time/imposter-syndrome/contents+pt.lr rename to content/contributing/first-time/imposter-syndrome/contents+pt.lr diff --git a/content/contributing/how/first-time/imposter-syndrome/contents+zh_TW.lr b/content/contributing/first-time/imposter-syndrome/contents+zh_TW.lr similarity index 100% rename from content/contributing/how/first-time/imposter-syndrome/contents+zh_TW.lr rename to content/contributing/first-time/imposter-syndrome/contents+zh_TW.lr diff --git a/content/contributing/first-time/imposter-syndrome/contents.lr b/content/contributing/first-time/imposter-syndrome/contents.lr new file mode 100644 index 0000000000..19c9639b1a --- /dev/null +++ b/content/contributing/first-time/imposter-syndrome/contents.lr @@ -0,0 +1,64 @@ +_model: page +--- +sort_key: 1 +--- +title: Imposter Syndrome +--- +summary: Don't think you're ready to be an open source contributor? You're wrong. +--- +body: + +There may be a little voice inside your head that is telling you that you're +not ready; that you need to do one more tutorial; that you aren't ready to be +an open source contributor. After all, you're just a beginner. What could you +possibly offer a project like BeeWare? + +I assure you - the little voice in your head is wrong. If you can write code at +all, you can contribute code to open source, and to BeeWare. + +You're not the first person to have those thoughts, either. Even the members of +the core team of this project have these thoughts from time to time. It's +called "imposter syndrome", and it's a really common problem. The good news is +- we're here to help you get over it. + +This tutorial exists to make sure you know exactly what process you have to +follow in order to get your patch merged. In addition to these procedural +instructions, this project has a Code of Conduct. This Code of Conduct is there +to give you confidence that no matter what mistakes you make, you'll be treated +with respect. Everyone makes mistakes - that's a natural part of learning. Our +pledge to you is that we are here to help you learn, not to insult or belittle +you for learning. + +Being an open source contributor doesn't just mean writing code, either. You +can help out by writing documentation, tests, or even giving feedback about the +project (and yes - that includes giving feedback about the contribution +process). Some of these contributions may be the most valuable to the project +as a whole, because you're coming to the project with fresh eyes, so you can +see the errors and assumptions that seasoned contributors have glossed over. + +You can't do any damage, either - either to your own computer, or to the +project as a whole. BeeWare projects don't touch any part of your computer or +operating system that could do any serious damage. Worst case, you'll end up +with a couple of extra files on your hard drive, which can be easily deleted +afterwards. And every contribution you submit to BeeWare is reviewed before it +is integrated into the "official" project, and you'll get feedback to help you +correct any problems that may exist. + +So - don't be afraid to contribute. If you've gotten this far, you've +demonstrated you have an interest in contributing - and that's all you need. We +can help you the rest of the way. + +Now it's time to roll up your sleeves, and `pick a project where you can +contribute`_. + +.. _pick a project where you can contribute: /contributing/how/first-time/what/ + +--- +gutter: + +Connecting with Confident Authenticity +---------------------------------------------- + +Learn more about how to combat imposter syndrome: watch `"Bake the Cookies, +Wear the Dress" `__ by Adrienne +Lowe diff --git a/content/contributing/how/first-time/more/contents+es.lr b/content/contributing/first-time/more/contents+es.lr similarity index 100% rename from content/contributing/how/first-time/more/contents+es.lr rename to content/contributing/first-time/more/contents+es.lr diff --git a/content/contributing/how/first-time/more/contents+pt.lr b/content/contributing/first-time/more/contents+pt.lr similarity index 100% rename from content/contributing/how/first-time/more/contents+pt.lr rename to content/contributing/first-time/more/contents+pt.lr diff --git a/content/contributing/how/first-time/more/contents+zh_TW.lr b/content/contributing/first-time/more/contents+zh_TW.lr similarity index 100% rename from content/contributing/how/first-time/more/contents+zh_TW.lr rename to content/contributing/first-time/more/contents+zh_TW.lr diff --git a/content/contributing/first-time/more/contents.lr b/content/contributing/first-time/more/contents.lr new file mode 100644 index 0000000000..bfa5d0e80d --- /dev/null +++ b/content/contributing/first-time/more/contents.lr @@ -0,0 +1,24 @@ +_model: page +--- +title: More Resources +--- +body: + +These resources come from outside BeeWare, but they are full of useful information. + + * `How to Contribute to Open Source - FreeCodeCamp `_ + * `How to Contribute to an Open Source Project on GitHub - EggHead.io `_ + * `Getting into Open Source for the first time - NearForm `_ + * `Open Source Resources - OpenSource.com `_ + + +----- + +Do you have another link? `Add it to the list! `_ + +--- +summary: There are many more resources for first time contributors +--- +sort_key: 10 +--- +incomplete: no diff --git a/content/contributing/how/first-time/setting-up-your-environment/contents+es.lr b/content/contributing/first-time/setting-up-your-environment/contents+es.lr similarity index 100% rename from content/contributing/how/first-time/setting-up-your-environment/contents+es.lr rename to content/contributing/first-time/setting-up-your-environment/contents+es.lr diff --git a/content/contributing/how/first-time/setting-up-your-environment/contents+pt.lr b/content/contributing/first-time/setting-up-your-environment/contents+pt.lr similarity index 100% rename from content/contributing/how/first-time/setting-up-your-environment/contents+pt.lr rename to content/contributing/first-time/setting-up-your-environment/contents+pt.lr diff --git a/content/contributing/first-time/setting-up-your-environment/contents.lr b/content/contributing/first-time/setting-up-your-environment/contents.lr new file mode 100644 index 0000000000..ed2ade2909 --- /dev/null +++ b/content/contributing/first-time/setting-up-your-environment/contents.lr @@ -0,0 +1,130 @@ +_model: page +--- +sort_key: 4 +--- +title: Setting up your environment +--- +summary: How to get your system setup to contribute +--- +_slug: setup +--- +body: + +In order to get contributing, you're going to need to setup a +**development environment** - a place where you can work on code where it can +behave the same as everyone else's environment. + +Many parts of BeeWare use the same tools: a specific version of Python, and +virtual environment controls. + +Python +------- + +Python is a scripting language, which is available on a number of different +operating systems. However, depending on what system you are using, your +version of Python is going to be different. Because of this reason, we specify +exactly which version of Python we expect the code to work with. + +For the following instructions, we're going to assume that you know exactly +which version of Python you need to install. Normally, this is listed in the +``README.md`` file or in the tutorial information. Our `CI +`_ systems have to be told exactly +which version of Python is required, too. So if you're really stuck, try +looking at the :code:`.github/workflows/ci.yml` file for the specific version +you need. + +pyenv +~~~~~~ + +`pyenv `_ is one way to get multiple versions of +Python working on your machine at the same time. It allows you to pick and choose +whichever version you need for a particular project. + + * MacOSX - You can install pyenv via `brew + `_, by running + :code:`brew install pyenv` + * Other - use the `automatic installer `_ + +Once :code:`pyenv` is installed, you need to install the specific Python +version. This information is stored in a :code:`.python-version` file, which +means you can have different versions of Python used in different projects on +your computer. + +To install and set the Python version: + +.. code-block:: bash + + $ cd /path/to/your/project + $ pyenv install 3.12.1 + $ pyenv local 3.12.1 + +More information about pyenv is available on `their website +`_. + +Virtual Environments +--------------------- + +When Python is installed, it provides a single global environment. By default, if you +install a package, it will be installed into this global environment. + +However, if you're working on more than one Python project, it's entirely likely that +those multiple projects will have different - and in some cases, conflicting - +requirements. What you need is a way to isolate each project so that installing a +package for one project won't force that same package to be installed for the second +project. + +This is done using *Virtual Environments*. A Virtual Environment, or ``venv``, is an +isolated environment that can be easily created, destroyed or recreated. Any package +installed in the virtual environment is only accessible *inside* that virtual +environment. Virtual environments are sometimes referred to as a "sandbox" - a safe +place to play, where if you make a mistake, you can knock down everything you've built +and start again. + +Python provides the ``venv`` module to create new virtual environments. Each virtual +environment has a name that can be used to identify the environment. To create a fresh +virtual environment named "my-venv", run: + +.. code-block:: bash + + $ python -m venv my-venv + +The version of Python that you use to create the virtual environment will be the version +that is used by default *inside* the virtual environment. If you've got multiple Python +versions installed, or you're using a tool like ``pyenv`` to manage Python versions, +ensure that the Python version that is currently active (or the version you reference +when invoking the ``-m venv`` command) is the version you intend. Once a virtual +environment has been created, you can't change the Python version that it is using. To +change the Python version, you need to create a fresh virtual environment. + +Invoking ``-m venv`` will *create* the virtual environment, but the environment is not +yet *active*. The virtual environment is a collection of files on disk, stored in a +directory that matches the name of the environment. To activate the virtual environment, +you run one of the files generated as part of the environment: + +.. code-block:: bash + + $ source my-venv/bin/activate + +This will result in a prefix being added to your command line prompt letting you know +you're in a virtual environment: + +.. code-block:: bash + + (my-venv) $ + +While the virtual environment is active, any ``pip install`` command will *only* affect +the virtual environment. It doesn't matter if you change directories - if your prompt +has a prefix, that virtual environment is active. + +If you open a second terminal window, the environment will *not* be active - you need to +re-activate the environment in every terminal session where you want to use the +environment. If you get errors about libraries not being available that you're *certain* +you've installed - check whether your virtual environment is active. + +To deactivate the virtual environment, run: + +.. code-block:: bash + + (my-venv) $ deactivate + +Once deactivated, the prefix will be dropped from the prompt. diff --git a/content/contributing/how/first-time/what-is-a/ci/contents+de.lr b/content/contributing/first-time/what-is-a/ci/contents+de.lr similarity index 100% rename from content/contributing/how/first-time/what-is-a/ci/contents+de.lr rename to content/contributing/first-time/what-is-a/ci/contents+de.lr diff --git a/content/contributing/how/first-time/what-is-a/ci/contents+es.lr b/content/contributing/first-time/what-is-a/ci/contents+es.lr similarity index 100% rename from content/contributing/how/first-time/what-is-a/ci/contents+es.lr rename to content/contributing/first-time/what-is-a/ci/contents+es.lr diff --git a/content/contributing/how/first-time/what-is-a/ci/contents+pt.lr b/content/contributing/first-time/what-is-a/ci/contents+pt.lr similarity index 100% rename from content/contributing/how/first-time/what-is-a/ci/contents+pt.lr rename to content/contributing/first-time/what-is-a/ci/contents+pt.lr diff --git a/content/contributing/first-time/what-is-a/ci/contents.lr b/content/contributing/first-time/what-is-a/ci/contents.lr new file mode 100644 index 0000000000..c9acb0dd17 --- /dev/null +++ b/content/contributing/first-time/what-is-a/ci/contents.lr @@ -0,0 +1,25 @@ +_model: page +--- +title: CI +--- +summary: What is CI, or Continuous Integration +--- +body: + +Continuous integration, or CI, is a way that we can test every code change that is made +to a project. These systems automatically listen for new pull requests and other events, +and automatically run test suites, and other automatic processes. + +We use GitHub's CI system: `Actions `_. Normally +the *build status* of a project is displayed as an image on the project's README file. +Green means the tests have been successful, and red means they have not. Clicking the +image will show you the results of these tests. + +--- +gutter: + +Unsure which CI environment is being used? +------------------------------------------- + +Check for the configuration file. GitHub CI workflows are configured in the +``.github/workflows`` directory. diff --git a/content/contributing/how/first-time/what-is-a/contents+es.lr b/content/contributing/first-time/what-is-a/contents+es.lr similarity index 100% rename from content/contributing/how/first-time/what-is-a/contents+es.lr rename to content/contributing/first-time/what-is-a/contents+es.lr diff --git a/content/contributing/how/first-time/what-is-a/contents+pt.lr b/content/contributing/first-time/what-is-a/contents+pt.lr similarity index 100% rename from content/contributing/how/first-time/what-is-a/contents+pt.lr rename to content/contributing/first-time/what-is-a/contents+pt.lr diff --git a/content/contributing/first-time/what-is-a/contents.lr b/content/contributing/first-time/what-is-a/contents.lr new file mode 100644 index 0000000000..0196eacc8c --- /dev/null +++ b/content/contributing/first-time/what-is-a/contents.lr @@ -0,0 +1,9 @@ +_model: page +--- +title: What is...? +--- +_slug: +--- +summary: Confused about what something is? We've described a number of things here +--- +sort_key: 5 diff --git a/content/contributing/how/first-time/what-is-a/git/contents+es.lr b/content/contributing/first-time/what-is-a/git/contents+es.lr similarity index 100% rename from content/contributing/how/first-time/what-is-a/git/contents+es.lr rename to content/contributing/first-time/what-is-a/git/contents+es.lr diff --git a/content/contributing/how/first-time/what-is-a/git/contents+pt.lr b/content/contributing/first-time/what-is-a/git/contents+pt.lr similarity index 100% rename from content/contributing/how/first-time/what-is-a/git/contents+pt.lr rename to content/contributing/first-time/what-is-a/git/contents+pt.lr diff --git a/content/contributing/first-time/what-is-a/git/contents.lr b/content/contributing/first-time/what-is-a/git/contents.lr new file mode 100644 index 0000000000..d92f58388e --- /dev/null +++ b/content/contributing/first-time/what-is-a/git/contents.lr @@ -0,0 +1,18 @@ +_model: page +--- +title: git +--- +body: + +:code:`git` is a `Version Control System +`_, which lets us save, store +and share changes to code over time. + +`GitHub `_ is just :code:`git` under the hood, but includes +a lot of helpful things, like a web interface, and nice Pull Requests and Issue +Tracking systems. + +--- +gutter: +--- +summary: What is git anyway? diff --git a/content/contributing/how/first-time/what-is-a/package-manager/contents+es.lr b/content/contributing/first-time/what-is-a/package-manager/contents+es.lr similarity index 100% rename from content/contributing/how/first-time/what-is-a/package-manager/contents+es.lr rename to content/contributing/first-time/what-is-a/package-manager/contents+es.lr diff --git a/content/contributing/how/first-time/what-is-a/package-manager/contents+pt.lr b/content/contributing/first-time/what-is-a/package-manager/contents+pt.lr similarity index 100% rename from content/contributing/how/first-time/what-is-a/package-manager/contents+pt.lr rename to content/contributing/first-time/what-is-a/package-manager/contents+pt.lr diff --git a/content/contributing/first-time/what-is-a/package-manager/contents.lr b/content/contributing/first-time/what-is-a/package-manager/contents.lr new file mode 100644 index 0000000000..43894bf075 --- /dev/null +++ b/content/contributing/first-time/what-is-a/package-manager/contents.lr @@ -0,0 +1,37 @@ +_model: page +--- +title: Package Managers +--- +summary: How you can manage your installed packages +--- +body: + +Installing software on your computer can be interesting. Sometimes you have to +download a file and then install it yourself, or copy files to specific places +on your computer. + +However, package managers help make this process easier by allowing for the +automation of installation of software. + +There are different levels of package managers: for the operating system level, +as well as one specifically for Python packages. + +MacOSX +------- + +`Homebrew `_ is the standard for installing software on your +Mac. This is the system that's used if you run a :code:`brew install` command. + +Linux +------ + +Depending on what family of operating system you run, you'll use +:code:`apt-get` (for Debian and Ubuntu) or :code:`yum` (for Red Hat and CentOS). + +Python +------------ + +:code:`pip` is the way you can install Python software. Running :code:`pip install` uses +the `Python Packaging Index `_, also known as "PyPI". PyPI is a +central repository for Python code. Many BeeWare projects can be installed using +:code:`pip`. diff --git a/content/contributing/how/first-time/what/contents+fr.lr b/content/contributing/first-time/what/contents+fr.lr similarity index 100% rename from content/contributing/how/first-time/what/contents+fr.lr rename to content/contributing/first-time/what/contents+fr.lr diff --git a/content/contributing/first-time/what/contents.lr b/content/contributing/first-time/what/contents.lr new file mode 100644 index 0000000000..ccb585ef15 --- /dev/null +++ b/content/contributing/first-time/what/contents.lr @@ -0,0 +1,174 @@ +_model: page +--- +sort_key: 2 +--- +title: What should I do? +--- +summary: So you want to help - but where should you start? +--- +body: + +The best place to start with any open source contribution is with something that +fits your knowledge, experience, and area of interest. + +Before you begin +----------------- + +Before you start contributing, it can help to get a feel for the project as a +whole. If you haven't already done the `BeeWare Tutorial +`__, start there. This will give you exposure to the +most important BeeWare tools, so you can see how they all fit together. + +Once you've completed that tutorial, you'll be ready to pick something to work +on. If you had any problems *doing* the tutorial - if you hit a bug, or if the +language used to describe a step wasn't clear - *that's a great place to +start*! If you can turn your experience into an improvement in the tutorial, +the next person who does the tutorial won't hit the same problem. + +However, if your tutorial experience was completely smooth (and we hope it +was!), here are some ideas for where to get involved, depending on your skills +and interests. + +Python programming +------------------- + +Briefcase +~~~~~~~~~ + +If you'd like to contribute to a tool that has a clearly defined problem +statement, but needs bugs squashed and features added, `Briefcase +`__ may be the project for you. Briefcase +is a tool for packaging a Python project as a standalone GUI application. It +takes a ``pyproject.toml`` configuration file, and uses that configuration data +to generate installers or distributable application bundles. + +The Briefcase `issue tracker `__ +has a collection of feature suggestions (and a smaller number of bugs). If this +is your first time contributing, look for one of the tickets labelled `good +first issue +`__ +- these are issues that have been specifically picked for first time +contributors because they should be relatively straightforward to implement. You +may also find it helpful to filter the tickets for the platform you actually use +for development - it will be difficult to fix a Linux bug if you don't have a +Linux machine to use for testing! + +Pick a ticket, leave a comment that you're looking into the problem, and try +to develop a pull request implementing a fix! + +Colosseum +~~~~~~~~~ + +If you like the idea of a very well specified, but complex problem, `Colosseum +`__ is a good place to contribute. +Colosseum is a pure-Python, browser implementation of the CSS layout algorithm. +BeeWare uses it to lay out widgets on the screen of an application. The CSS +specification has an extensive test suite; Colosseum needs to pass all those +tests. + +The Colosseum documentation has a `contribution guide +`__ to walk +you through your first Colosseum contribution. + +GUI programming +---------------- + +If you've got experience with a native widget library - Cocoa on macOS, GTK+ on +Linux, Windows Forms, or the native iOS or Android libraries, you may be able to +help with `Toga `__. Toga is a cross platform +widget toolkit - it provides a common interface for user interface elements like +buttons and trees. + +Toga has a range of interfaces already defined; however, the implementation of +those interfaces isn't complete across all platforms. Pick a widget, and +implement that widget for your platform of choice! + +Even if you *don't* know a native widget library, you may still be able to help +with Toga. Writing new widgets is a lot less complicated than it may seem. +Every platform has documentation for how to use their native APIs, and the +process of translating that platform documentation from another langauge (e.g., +Objective C or C#) is a relatively straightforward process. The existing code +should give you some pointers of how this can be done, and the BeeWare team is +happy to help if you need it. Jump on the `BeeWare Discord +`__ and we'll do whatever we can to help! + +If you're not up for transforming code from one language to another - there's +always the test suite. Toga's core library also has a test suite, but the +coverage of that test suite isn't very good. Pick a widget interface, and see +if you can write a test for it! + +Documentation +-------------- + +Good documentation is essential for any successful project. We know that `Toga +`__ and `Briefcase +`__ both need significant improvements to +their documentation. You've done the tutorial; now take a look at the +documentation for `Toga `__ and `Briefcase +`__ and see if you can find a way to improve +the tutorials, references and topics guides that are there. + +Tutorials +---------- + +One of the best ways to contribute is to make sure our introductory and tutorial +documentation is rock solid. Pick a project of interest from the BeeWare suite, +and try to follow the getting started guide and tutorial. If you can't *find* +the getting started guide - then that's the first thing to report! + +As you work through the tutorial, take note of anything that doesn't make sense, +or doesn't work. Then open a bug report for those problems. + +Windows +-------- + +If you're a Windows user, BeeWare can *definitely* use your help. The core team +all use Linux and macOS in their daily development, and as a result, it's really +easy for Windows incompatibilities to slip in. This is almost always due to an +oversight. Identifying - and maybe even fixing - problems with running BeeWare +tools on Windows is an immense help. + +Languages +---------- + +Do you speak a language other than English? At present, the core team are all +native speakers of English. Providing translations of documentation, or +completely new tutorials or guides in your native language is a great way to +contribute. Pick a project that already has documentation and translate that +text. Alternatively, start from scratch and write a completely new tutorial. + +If you speak a language with a non-latin character set (e.g., Russian or +Chinese), or a language with a right-to-left script (e.g., Hebrew or Arabic) +you'll be able to point out all the places where we've assumed simple ASCII +encoding or left-to-right conventions. Pick any of the active BeeWare projects, +and try to use it with using your native language. If you hit any problems, +report those problems as bugs; if you are feeling particularly adventurous, see +if you can work out how to *fix* the bug, too. + +Practical usage +---------------- + +One of the best ways for us to determine where our gaps are - in both +documentation and APIs - is for people to actually use BeeWare to build +something. So, if none of the ideas so far sound interesting, why not try +something of your own? Use the BeeWare suite to build that app you've always +wanted - a desktop visualization of a data source, or a mobile application +to track your activities - whatever it is, try to build it. + +We can almost guarantee that you'll hit problems. BeeWare is a still a very +young project. But the problems you hit will give us a great indication of +what needs to be tackled. It will indicate what widgets we need, and what +documentation needs to be improved. So, as you hit problems building your own +app, log issues with the BeeWare projects that caused problems. This will +enable us to identify what we need to improve - and, it might even be a source +of inspiration for you to contribute! + +--- +gutter: + +First Time Contributors +------------------------ + +Want to start small? Once you've poked about a bit in the tutorials, check out +the BeeWare issues marked `[good first issue] +`__ diff --git a/content/contributing/how/contents+ar.lr b/content/contributing/how/contents+ar.lr deleted file mode 100644 index 8f1ffa2092..0000000000 --- a/content/contributing/how/contents+ar.lr +++ /dev/null @@ -1,57 +0,0 @@ -_model: page ---- -_template: leaf-page.html ---- -sort_key: 1 ---- -title: مالذي تستطيع عمله للمساعدة ؟ ---- -summary: تريد المشاركة؟ الكل مرحب به للمساعدة ---- -body: - -هناك العديد من الطرق للمساعدة - -المساهمون للمرة الأولى ------------------------ - -إذا كنت جديدا على عالم المساهمات و البرمجيات المفتوحة المصدر رجاءا قم بمطالعة `دليل المساهمين المبتدئين `__ . - -المساهمة بالبرمجة ------------------- - -إذا كنت تبحث عن شيء لتساهم فيه ، ولا تعرف من أين تبدأ فإن جهدك مرحبٌ به مهما كان بسيطا ،حاول البحث في تعقب التذاكر لمشروع ما يصب -في صلب اهتماماتك ،عادة ما سيكون هناك بضع تذاكر مشاكل معروفة ،إن أي تذكرة موجودة هي مرشحة ليتم إصلاحها . ستكون بعض التذاكر موسومة على وجه الخصوص `[up-for-grabs] `__ وهذا يدل على أنها مجالات ذات أهمية خاصة حيث يرغب المشروع في الحصول على مساهمات ، أما إذا كانت هذه مساهمتك الأولى ، فسيتم تمييز بعض التذاكر `[good first issue] `__ وقد تم اختيارها لأنها مقدمات بسيطة نسبيًا للمساهمة في المشروع ، وسيقوم فريقنا بإرشاد أي مساهم من أجل المساهمة في تصحيح أحد هذه المشاكل . - - -استخدام المنصة ---------------- - -هل تستخدم ويندوز أو إحدى توزيعات لينكس ؟ هل كنت قادرا على تثبيت مشروع أو تطبيق على نظامك؟ إذا واجهتك أية صعوبات أثناء قيامك بذالك ، سواءا كنت قادرا على إصلاحها أم لا ، من فضلك قمت بتحديث التوثيق واشرح كيف كنت قادرا على إصلاحها ، أو تسجيل مشكلة إذا وجدت خطأ لا يمكنك إصلاحه . - -التوثيق --------- - -هل التوثيق محدَث ؟ هل تعتقد أنه يمكننا صياغته بطريقة أخرى ؟ هل هناك أقسام ناقصة أو غير موجودة ؟ هل عندك أية أفكار حول كيفية كتابة دروات تعليمية ؟ من فضلك قم بتنفيذ طلب دمج في المشروع . - -هذا الموقع ------------ - -هل هناك أي شيء خاطئ أو مفقود من هذا الموقع؟ -من فضلك قم بتنفيذ طلب دمج ،أو قم بالتعديل `من هنا `__ . - -شيء آخر --------- - -إذا كانت لديك فكرة خاصة بك عن شيء ما ، أو إذا كنت لا ترى أي تذاكر ، أو تريد أن يتم توجيهك ، أو لست متأكدا من كيفية المضي قدما ، اتصل بنا على `تويتر `__ أو على `Discord `__ ، المشرفون على المشروع يعشقون مجتمع المشاريع مفتوحة المصدر ،و يسرهم التعاون ، لا سيما مع المساهمين الجدد ،وسوف يجيبون بكل سرور على أي أسئلة وسيقومون بإرشادك أثناء أي مشاكل قد تواجهه . - ---- -gutter: - -جميع المساهمات مرحب بها ----------------------------- - - - ليس في مجال البرمجة فقط ، بل في أي مجال ، يتطلب أيَ مشروع برمجي ناجح أشياء عدة ، ومن بينها : التوثيق الجيَد ، مهارات التصميم ، ردود الفعل و التبليغ عن الأخطاء البرمجية . إن مجتمع BeeWare يقر ويعترف بأن جميع المساهمات مهمة ، ولا يحصرها فقط في تلك التي تأتي على طريق طلب دمج على منصة GitHub . ---- -incomplete: yes diff --git a/content/contributing/how/contents+es.lr b/content/contributing/how/contents+es.lr deleted file mode 100644 index e7c396b242..0000000000 --- a/content/contributing/how/contents+es.lr +++ /dev/null @@ -1,60 +0,0 @@ -_model: page ---- -_template: leaf-page.html ---- -sort_key: 1 ---- -title: ¿Qué puedes hacer para ayudar? ---- -summary: ¿Quieres contribuir con BeeWare? Cualquier persona es bienvenida a ayudar! ---- -body: - -Hay muchas maneras de ayudar con BeeWare. - -`Principiantes`_ ----------------------------------- - -Nunca has colaborado a un proyecto de código abierto antes? ¡Déjanos ayudarte! Todo el mundo puede contribuir al código abierto, y estamos aquí para mostrarle cómo. - -.. _Principiantes: /es/contribuir/como-ayudar/principiantes/ - -Contribuciones de código --------------------------------- - -Si estás buscando algo para trabajar y no sabes dónde concentrar tus esfuerzos, trata de mirar el rastreador de tiquete de algún proyecto de tu interés. Normalmente habrá un par de entradas con problemas; cualquier tiquete es un candidato para ser arreglado. - -Si eres un colaborador principiante, algunos tiquetes también se etiquetan como `[good first issue] `__. Estos son temas especiales que han sido seleccionados porque representan introducciones relativamente sencillas al proyecto, y el equipo PyBee servirá de mentor de cualquier colaborador principiante que realice un *Pull Request* una de estos tiquetes. - -Plataforma de trabajo --------------------------- - -¿Utilizas Windows o varios sabores de Linux? ¿Puedes instalar un proyecto o una aplicación en tu sistema? ¿Tuviste algún problema? - -Si es así, actualiza la documentación para mostrar cómo lograste que funcionara o registra un tiquete si has encontrado un error que no pudiste arreglar. - -Documentación ------------------------ - -¿Está actualizada la documentación? ¿Crees que las cosas podrían ser redactadas de una manera diferente? ¿Hay secciones incompletas? ¿Tienes una idea para un tutorial que podría ser escrito? Por favor, envía una solicitud de un *Pull Request*! - -Ayuda a traducir y mejorar este sitio web ---------------------------------------------------- - -¿Hay algo malo o incompleto en este sitio web? Por favor, siéntete libre de `hacer ediciones `__ y enviar una solicitud con un *Pull Request*! - -Quieres ayudar a traducir o actualizar páginas del sitio? Visita la `sección de traducciones `__. - -Algo más -------------- - -Si tienes tu propia idea para algo, o si no ves ninguna tiquete al respeco o quieres ser mentor en un tiquete, o no estás seguro de cómo para continuar, puedes ponerte en contacto con `Mastodon `__ o en `Discord `__. Los mantenedores del proyecto aman colaborar, especialmente con los nuevos colaboradores, y con mucho gusto resolverán cualquier pregunta o te ayudarán a través de cualquier problema que puedas encontrar. ---- -gutter: - -Todas las contribuciones son bienvenidas -------------------------------------------------------------------------- - -Pero no se trata únicamente de código. Un proyecto de software exitoso requiere documentación, diseño, comentarios e reportes de errores. La comunidad BeeWare reconoce que todas las contribuciones son importantes - no sólo las que vienen como una solicitud de *Pull Request* en GitHub. ---- -_slug: como-ayudar diff --git a/content/contributing/how/contents+fr.lr b/content/contributing/how/contents+fr.lr deleted file mode 100644 index 58870d15e9..0000000000 --- a/content/contributing/how/contents+fr.lr +++ /dev/null @@ -1,75 +0,0 @@ ---- -_template: leaf-page.html ---- -sort_key: 1 ---- -title: Comment pouvez-vous aider? ---- -summary: Vous voulez contribuer à BeeWare? Tout le monde est le bienvenu pour aider! ---- -body: - -Il y a de nombreuses manières d'aider BeeWare. - -`Nouveaux contributeurs`_ ---------------------------- - -Si vous êtes nouveau sur ce projet (ou même complètement nouveau dans le monde de l'open source), le meilleur endroit pour démarrer est `ici `__. Tout le monde peut contribuer à l'open source, et nous sommes là pour vous montrer comment. - -.. _Nouveaux contributeurs: /contributing/how/first-time/ - -Contributions au code ---------------------- - -Vos contributions de code sont les bienvenues! Familiarisez-vous avec notre -`processus de développement `__. - -Si vous cherchez une chose sur laquelle travailler, et ne savez pas par où -commencer, jetez un oeil au suivi de tickets pour le projet qui vous intéresse. -Il y aura généralement quelques tickets avec des problèmes identifiés; -n'importe quel ticket est un bon candidat pour des corrections. - -Si vous contribuez pour la première fois, certains tickets portent aussi le -label `[good first issue] `__. -Ce sont des problèmes spéciaux qui ont été sélectionnés car ils permettent d'introduire le projet de manière simple, et l'équipe BeeWare guidera tout nouveau contributeur pour fournir un correctif à un ce ces problèmes. - -Utilisation des plateformes ---------------------------- - -Vous utilisez windows ou une distribution Linux? Arrivez-vous à installer un projet ou une application sur votre système? Avez-vous rencontré le moindre problème? - -Si c'est le cas, merci de mettre à jour la documentation pour montrer comment vous avez réussi à le faire fonctionner, ou bien enregistrez le problème si vous avez trouvé un bogue que vous ne pouvez pas corriger. - -Documentation --------------- - -La documentation est-elle à jour? Vous pensez que les choses pourraient être rédigées différemment? Il manque des sections? Vous avez une idée de tutoriel qui pourrait être ajouté? Merci de soumettre une 'Pull Request'! - -Aider à traduire et mettre à jour ce site Web -------------------------------------------------- - -Quelquechose cloche ou manque sur ce site? N'hésitez pas à `faire des modifications `__ et soumettre une 'pull request'! - -Vous voulez aider à traduire ou mettre à jour le contenu de ce site? Rendez-vous dans la `section traduction `__. - -Autre chose -------------------------- - -Si vous avez votre propre idée sur un sujet, si vous ne voyez aucun ticket, -si vous souhaitez être encadré sur un ticket, ou si vous n'êtes pas sûr de la -manière de procéder, contactez les mainteneurs du projet sur -`Mastodon `__ ou -`Discord `__. Les mainteneurs du projet aiment -collaborer, particulièrement avec les nouveaux contributeurs, et répondront -volontiers à toute question, ou vous guidront pour résoudre tout problème que -vous pourriez rencontrer. - - - ---- -gutter: - -Toutes les contributions sont bienvenues ----------------------------------------- - -Tout n'est pas qu'une question de code. Un projet logiciel réussi requiert de la documentation, des compétences en design, des retours d'expérience et des rapports de bogues. La communauté BeeWare considère que toutes les contributions sont importantes - pas uniquement celles sous la forme d'une 'pull request' sur GitHub. diff --git a/content/contributing/how/contents+pt.lr b/content/contributing/how/contents+pt.lr deleted file mode 100644 index 674275237f..0000000000 --- a/content/contributing/how/contents+pt.lr +++ /dev/null @@ -1,79 +0,0 @@ -_model: page ---- -_template: leaf-page.html ---- -sort_key: 1 ---- -title: O que você pode fazer para ajudar? ---- -summary: Quer contribuir para o BeeWare? Toda ajuda é bem-vinda! ---- -body: - -Há muitas formas de ajudar o BeeWare. - -`Primeiras Contribuições`_ ---------------------------- - -Se você é novo neste projeto (ou mesmo sem nenhuma experiência em projetos de código aberto), o melhor lugar para começar -é `aqui `__. Todos podem contribuir para projetos de código aberto, e estamos aqui para mostrá-lo como. - -.. _Primeiras Contribuições: /pt_BR/contributing/how/first-time/ - -Contribuições com Código -------------------------- - -Suas contribuições de código são bem-vindas! Por favor, familiarize-se com -o nosso `Processo de Desenvolvimento `__. - -Se quer fazer algo mas não sabe onde seus esforços podem ser bem-vindos, -procure no rastreador de tickets um projeto de seu interesse. Costumam existir -alguns tickets com problemas conhecidos; qualquer ticket é um candidato a ser -consertado. - -Se quiser fazer sua primeira contribuição, veja os tickets marcados como -`[good first issue] `__. -Eles são problemas especiais, selecionados por serem introduções relativamente simples ao projeto, -e a equipe do PyBee orientará iniciantes no processo de contribuição para -qualquer desses problemas. - -Uso da Plataforma ------------------- - -Você usa Windows ou alguma variedade de Linux? Consegue instalar um projeto ou aplicação em seu sistema? Encontrou alguma dificuldade? - -Nesse caso, você pode atualizar a documentação para mostrar como resolveu o problema, ou informá-lo caso tenha encontrado um bug que não pode consertar. - -Documentação -------------- - -A documentação está atualizada? Acha que algo pode pode ser explicado de modo diferente? Falta alguma seção? Tem ideias para novos tutoriais? Por favor envie um pull request! - -Ajude a traduzir e atualizar este site ---------------------------------------- - -Há algo errado ou faltando neste site? Fique à vontade para `fazer uma edição `__ e envie um pull request! - -Outras coisas --------------- - -Se tiver tido alguma outra ideia, não achou nenhum -ticket, quiser orientação com um ticket ou -não souber como proceder, contate os mantenedores do projeto no -`Mastodon `__ ou -`Discord `__. -Os mantenedores do projeto adoram ajudar, especialmente com -novos contribuidores, e terão prazer em responder quaisquer -perguntas ou orientá-lo em qualquer problema que possa encontrar. - - ---- -gutter: - -Todas as Contribuições são Bem-vindas --------------------------------------- - -Código não é tudo. Um software bem sucedido precisa de documentação, design hábil, relatórios de bug e comentários. A comunidade -BeeWare reconhece que todas as contribuições são importantes - não somente aquelas que vem como uma pull request no GitHub ---- -incomplete: no diff --git a/content/contributing/how/contents+tr.lr b/content/contributing/how/contents+tr.lr deleted file mode 100644 index 8401e78361..0000000000 --- a/content/contributing/how/contents+tr.lr +++ /dev/null @@ -1,71 +0,0 @@ -_model: page - --- - _template: leaf-page.html - --- - sort_key: 1 - --- - title: Yardım etmek için ne yapabilirim? - --- - summary: BeeWare'e katkı sağlamak mı istiyorsun? Herkes yardım edebilir! - --- - body: - - BeeWare'e katkıda bulunmak için bir çok yol var. - - `İlk kez katkıda bulunanlar`_ - --------------------------- - - Eğer projede yeniysen (hatta genel olarak açık kaynak için yeniysen), başlangıç için en iyi yer`burasıdır `__. Açık kaynak koda herkes katkıda bulunabilir ve sana nasıl yapabileceğini göstermek için biz buradayız. - - .. _First-time Contributors: /contributing/how/first-time/ - - Kod Katkıları - ------------------- - - Kod katkılarınızı bekliyoruz! Lütfen bizim `Geliştirme sürecimizi `__ inceleyin. - - Üzerinde çalışacak bir şey arıyorsanız ve nereden başlayacağınızı bilemiyorsanız ilginizi çekebilecek bir proje bulmak için projelerin bulunduğu biletler kısmını inceleyin. Genellikle sorunları bilinen bir kaç bilet mevcuttur ve herhangi bir bilet düzeltilmeye adaydır. - - Eğer ilk kez katkıda bulunuyorsanız bazı biletler `[good first issue] `__ şeklinde etiketlidir. - Bunlar seçilmiş özel konulardır çünkü nispeten basit bir şekilde tanımlanmışlardır ve PyBee ekibi bu sorunların çözülmesi aşamasında ilk kez katkıda bulunacaklara rehberlik edeceklerdir. - - Platform Kullanımı - --------------- - - Windows ya da çeşitli Linux dağıtımlarını mı kullanıyorsunuz? Sisteminize bir uygulama ya da proje yükleyebiliyor musunuz? Çalıştırmada herhangi bir sorunla karşılaştınız mı? - - Eğer öyleyse, nasıl çalıştırabileceğinizi göstermek için lütfen belgeleri güncelleyin ya da düzeltemeyeceğiniz bir hata bulduysanız bu sorunu günlüğe kaydedin. - - Belgeleme - -------------- - - Belgeler güncel mi? Size göre işler farklı şekilde ifade edilebilir mi? Eksik bölümler mi var? Öğretici hakkında daha iyi bir fikriniz mi var? Lütfen bir düzenleme isteği gönderin! - - Çeviriye yardım et ve bu web sitesini güncelle - ------------------------------------------------- - - Bu web sitesinde hatalı ya da eksik bir şeyler mi var? Lütfen çekinmeyin `düzenleme yap `__ ve düzenleme talebi gönder! - - Bu web sitesinin içeriğini güncellemek ve çeviri konusunda yardım etmek isterseniz `çeviriler bölümünü `__ ziyaret edin. - - Başka bir şey - ------------------------- - - Başka bir şey için bir fikriniz varsa ya da herhangi bir bileti göremediyseniz - ya da biletleri yönetmek istiyorsanız ya da nasıl ilerleyeceğiniz hakkında bir - fikriniz yoksa proje yöneticileriyle iletişime geçin - `Mastodon `__ ya da - `Discord `__. Proje yöneticileri yeni katkı sağlayacak kişilerle - iş birliği yapmayı severler ve soracağınız her hangi bir soruyu memnuniyetle cevaplarlar, herhangi - bir sorun yaşarsanız size yol gösterirler. - - - - - --- - gutter: - - Tüm katkı sağlayanlar, Hoşgeldiniz - ---------------------------------- - - Ama bu sadece kod hakkında değildir. Başarılı bir yazılım projesi dökümantasyon, tasarım becerileri, geri bildirim ve hata raporları gerektirir. BeeWare topluluğu sadece Github üzerinde yapılan düzeltme isteklerinin değil, bütün katkıların önemli olduğunu kabul eder. diff --git a/content/contributing/how/contents+zh_TW.lr b/content/contributing/how/contents+zh_TW.lr deleted file mode 100644 index a70f639646..0000000000 --- a/content/contributing/how/contents+zh_TW.lr +++ /dev/null @@ -1,72 +0,0 @@ -_model: page ---- -_template: leaf-page.html ---- -sort_key: 1 ---- -title: 如何協助 ---- -summary: 你也想參與嗎?來吧--誰都可以幫忙! ---- -body: - -有很多方法可以協作! - -第一次貢獻的人 ------------------------- - -如果你從來沒開源貢獻過,請參閱 `第一次貢獻者的指南 `__ - -貢獻程式碼 ---------------------- - -歡迎您貢獻程式碼!請熟悉我們的開發流程。 - -如果您正在尋找一些可以做的事情,並且不知道您的努力會在哪裡受到歡迎,可以在錯誤追蹤器找找感興趣的項目。通常會有幾個存在已知問題的;任何錯誤都可以被修復。 - -如果你是第一次貢獻,你可以看看有著 `[good first issue] `__ 標籤的錯誤.因為這些議題適合剛開始接觸項目的貢獻者,所以這些特別的議題已經被專門給第一次貢獻者。BeeWare團隊會輔導任何第一次貢獻的人提交關於上述議題的補丁。 - -平台使用 ---------------- - -你會使用微軟還是不同類型的 Linux?你能把項目安裝好嗎?你碰到了問題? - -有的話,請編輯文檔給其他人看怎麼做。如果找到了你自己沒辦法解決的問題,請回報問題。 - -文檔 -------------------- - -文檔更新到最新了嗎?語氣合適嗎?步驟都清楚嗎?想寫一篇教學?歡迎提交一個Pull Request! - -網站是否有任何錯誤或遺漏的內容?請隨時進行編輯並提交Pull Request! - -協助我們更新與翻譯本網站 --------------------------------------------- - -您是否會說英語以外的語言,並且願意幫助其他人更好地存取 BeeWare 文件?請造訪 `翻譯部分 `__,以了解如何貢獻 BeeWare 文件的翻譯。 - -自己開發一個應用程式! ----------------------------- - -最後,BeeWare 是一套用來開發應用程式的工具。 -來衡量我們成就的最好方式之一就是看到人們用此套件開發出真正在使用的應用程式。 -因此,如果你想到什麼好點子,就試著實作它吧! - -在開發的過程中,你也須會找到此套件的一些漏洞、問題、缺少的功能或是一些相容問題等等, -在你回報後,這些問題都會成為稍後的漏洞回報及補丁。 - -其他 -------------------------- - -如果您對某件事有自己的想法,或者您沒有看到任何有關的議題,或者您希望獲得任何方面的指導,亦或是您不確定如何繼續,請聯繫 `Mastodon `__ 或 `Discord `__ 上的專案維護人員。專案維護人員喜歡合作,尤其是與新貢獻者合作,並且很樂意回答任何問題或引導您解決可能遇到的任何問題。 - ---- -gutter: - -歡迎所有的貢獻 ----------------------------------- - -項目裡不只是包括程式碼——要成功的軟體項目有著文檔,設計技能,意見以及錯誤報告。BeeWare社群覺得不只是GitHub上的pull request很重要——所有的貢獻都非常重要。 - ---- -incomplete: no diff --git a/content/contributing/how/contents.lr b/content/contributing/how/contents.lr index a6f6e3b429..92b29bf3ba 100644 --- a/content/contributing/how/contents.lr +++ b/content/contributing/how/contents.lr @@ -1,102 +1,5 @@ -_model: page +_model: redirect --- -_template: leaf-page.html +new_path: /contributing/ --- -sort_key: 1 ---- -title: What can you do to help? ---- -summary: Want to contribute to BeeWare? Anyone is welcome to help out! ---- -body: - -There are many ways to help with BeeWare. - -`First-time Contributors`_ ---------------------------- - -If you're new to the project (or even entirely new to open source in general), -the best place to start is `here `__. Everyone -can contribute to open source, and we're here to show you how. - -.. _First-time Contributors: /contributing/how/first-time/ - -Code Contributions -------------------- - -Your code contributions are welcome! Please familiarize yourself with -our `Development Process `__. - -If you're looking for something to work on, and don't know where your -effort would be welcome, try looking at the ticket tracker for a project -of interest. There will usually be a couple of tickets with known -problems; any ticket is a candidate for being fixed. - -If you're a first time contributor, some tickets are also tagged as -`[good first issue] -`__. -These are special issues that have been selected because they're -relatively simple introductions to the project, and the BeeWare team -will mentor any first time contributor in committing a patch for -one of these issues. - -Platform Usage ---------------- - -Do you use Windows or various flavours of Linux? Are you able to install a -project or application on your system? Did you run into any problems? - -If so, please update the documentation to show how you were able to get it to -work, or log an issue if you've found a bug that you can't fix. - -Documentation --------------- - -Is the documentation up to date? Do you think things could be worded -differently? Are there missing sections? Do you have an idea for a tutorial -that could be written? Please submit a pull request! - -Is there anything wrong or missing from this website? Please feel free to `make -edits `__ and submit a pull -request! - -Help translate and update this Website ---------------------------------------- - -Do you speak a language other than English, and would like to help others -have better access to BeeWare documentation? Visit the -`translations section `__ to learn how you -can contribute translations of BeeWare documentation. - -Build a real application! --------------------------- - -Ultimately BeeWare is a set of tools for building applications. One of the best -ways to evaluate our progress is to see people build real-world applications -with the BeeWare tools. So if you've got an idea for an application you've -always wanted or needed - try to build it! - -In the process of building that application, you'll likely find bugs, missing -features, or friction in the development process. Those problems can then be -turned into bug reports or patches. - -Something else ---------------- - -If you've got your own idea for something, or if you don't see any -tickets, or you want to be mentored on a ticket, or you aren't sure how -to proceed, contact the project maintainers on -`Mastodon `__ or -`Discord `__. The project maintainers love -collaborating, especially with new contributors, and will gladly answer -any questions or walk you through any problems you may encounter. - ---- -gutter: - -All Contributions Welcome --------------------------- - -It's not just about code. A successful software project requires documentation, design -skills, feedback and bug reports. The BeeWare community acknowledges that all -contributions are important - not just the ones that come as a pull request on GitHub. +_discoverable: no diff --git a/content/contributing/how/first-time/contents.lr b/content/contributing/how/first-time/contents.lr index b317ffefec..ab5973223f 100644 --- a/content/contributing/how/first-time/contents.lr +++ b/content/contributing/how/first-time/contents.lr @@ -1,7 +1,5 @@ -_model: page +_model: redirect --- -sort_key: 1 +new_path: /contributing/first-time/ --- -title: First-time contributors ---- -summary: Never contributed to open source before? Let us help you! +_discoverable: no diff --git a/content/contributing/how/first-time/github-notifications-101/contents.lr b/content/contributing/how/first-time/github-notifications-101/contents.lr index 3cc527748c..dc2c01697f 100644 --- a/content/contributing/how/first-time/github-notifications-101/contents.lr +++ b/content/contributing/how/first-time/github-notifications-101/contents.lr @@ -1,79 +1,5 @@ -_model: page +_model: redirect --- -sort_key: 4 +new_path: /contributing/first-time/github-notifications-101/ --- -title: GitHub Notifications 101 ---- -summary: So you're now using GitHub, and it's notifying you. What now? ---- -body: - -Once you start contributing to BeeWare, GitHub is going to start notifying you -about things. - -This is a good thing! But it can get overwhelming; so, here are some tips to -help you battle the deluge. - -- If you prefer email notifications only, disable the "Web" notifications. - -- If you prefer not to get email notifications, disable the "Email" - notifications. - -If you do prefer email notifications, there are a bunch of ways you can handle -things. - -Repo settings -~~~~~~~~~~~~~~ - -Each repo has a number of notification settings: - -- Watching - you get notifications for __everything__. Any issue, any Pull - Request, any comment. This is helpful if you really really super duper care - about a repo - -- Not Watching - you will only get notifications if you're mentioned, or when - you're participating (say, on your own Pull Request) - -- Ignoring - never ever ever be notified. - -You can check what repos you're watching across all of GitHub from the -`watching page `_. - - -Email filters -~~~~~~~~~~~~~~~ - -GitHub emails are rich in information that can help you filter out what you -care about and what you don't. - -Emails will have the subject line of repo in question - -- For example, ``[beeware/batavia] Add a new function`` would be a notification - from the repo Batavia - -If you're mentioned by name: - -- the email will be cc'd to ``mention@noreply.github.com`` - -- the email will include the phrase ``You are receiving this because you were - mentioned.`` - -If you're only subscribed to a repo: - -- the email will be cc'd to ``subscribed@noreply.github.com`` - -Ssshhhhhh -~~~~~~~~~~~ - -If you want to mute a specific thread, you can click the 'Unsubscribe' button -on any issue or pull request. - -If you get email, you can click on the 'Mute this thread'. - ---- -gutter: - -GitHub has a bunch of resources to help you out with notifications. - -- `About Notifications `_ -- `Managing Notifications `_ +_discoverable: no diff --git a/content/contributing/how/first-time/github/contents.lr b/content/contributing/how/first-time/github/contents.lr index f0b782f5fa..4a5348fd4e 100644 --- a/content/contributing/how/first-time/github/contents.lr +++ b/content/contributing/how/first-time/github/contents.lr @@ -1,163 +1,5 @@ -_model: page +_model: redirect --- -sort_key: 3 +new_path: /contributing/first-time/github/ --- -title: Using GitHub ---- -summary: How to submit a pull request using GitHub ---- -body: - -This GitHub tutorial is lovingly based on the `DjangoGirls How To Contribute -Tutorial `__ which is available under -a Creative Commons Attribution-ShareAlike 4.0 license. - -For this tutorial, we will be using the `Briefcase -`__ repository as a basis for the links -and references. - -Getting started and prerequisites ----------------------------------- - -For contributing to BeeWare, the following is needed to get started: - -- a `GitHub account `__ -- in the case of complex edits familiarity with `Git command line - basics `__ or - familiarity with an app (`Windows and Mac `__) - to push your edits made on your computer to GitHub. - -Fork the repository ----------------------------------- - -First, fork the `Briefcase `__ repository -to your personal GitHub account: - -|Fork button| - -Editing Documentation --------------------------------- - -Simple changes ----------------------------------- - -For simple changes like typo corrections you can use the GitHub online editor: - -- Open your local fork page on GitHub, -- go to *README.rst* file in any chapter, -- press the *Edit* icon (pen) - -and you can edit the chapter directly on github.com. - -|Edit button| - -RST syntax is used to edit the individual pages of the documentation. - -|GitHub editor| - -.. note:: - The above screenshot might not reflect what is currently in the GitHub - repository. The live repository will change from time to time. However, - the process for submitting pull requests remains the same. - -Save your changes and create a pull request as explained below. - -New code and complex changes ----------------------------------- - -For adding new code, extending classes, or complex changes, you need to get a -copy of the code to your local computer. - -Either use the GitHub app for your operating system (mentioned above) or -``git`` command line to get the repository locally. You get the repository -address from the front page of your own GitHub repository fork: - -:: - - git clone git@github.com:yourusername/briefcase.git - -Then, create a branch for your new changes to sit in. It helps to call -the branch something related to the changes you are going to make. - -:: - - git checkout -b update_documentation - -Make any changes in the code, and ensure they are tested, and saved -locally. - -Then commit the changes using ``git`` and push the changes to your -remote GitHub repository. - -Example: - -:: - - $ git status - On branch update_documentation - Untracked files: - (use "git add ..." to include in what will be committed) - - README.rst - - $ git add README.rst - - $ git commit -m "Update README.rst documentation for Briefcase" - [update_documentation fe36152] Added gitbook screenshot - 1 file changed, 0 insertions(+), 0 deletions(-) - create mode 100644 README.rst - - $ git push - Counting objects: 11, done. - Delta compression using up to 8 threads. - Compressing objects: 100% (5/5), done. - Writing objects: 100% (5/5), 266.37 KiB | 0 bytes/s, done. - Total 5 (delta 1), reused 0 (delta 0) - To git@github.com:yourusername/briefcase.git - b37ca59..fe36152 update_documentation -> update_documentation - -Making a pull request ----------------------------------- - -After you have finished your changes you need to create `a pull request -`__ on GitHub. BeeWare -will get notified about the pull request, review your changes, suggest any -corrections if needed and then *pull* your changes to the main version. - -In your own repository on GitHub press do *Compare & pull request* - -|image4| - -Fill in the information *why* this change is being made. The reviewer can see -the details of the actual change, so you don't need repeat the content of the -change. - -Then press *Create pull request*. - -GitHub emails will notify you for the follow up process. - ---------------- - -.. |Fork button| image:: /contributing/how/first-time/github/fork.png - :class: img-fluid - -.. |Edit button| image:: /contributing/how/first-time/github/edit.png - :class: img-fluid - -.. |GitHub editor| image:: /contributing/how/first-time/github/github_editor.png - :class: img-fluid - -.. |image4| image:: /contributing/how/first-time/github/pull_request.png - :class: img-fluid - ---- -gutter: - -Learn more about the git process ------------------------------------------- - -There are many useful resources to help you learn how to log issues and -raise Pull Requests in GitHub: - - * `Contributing to Open Source `__ - * `How to Fork a Repo `__ +_discoverable: no diff --git a/content/contributing/how/first-time/imposter-syndrome/contents.lr b/content/contributing/how/first-time/imposter-syndrome/contents.lr index 19c9639b1a..02af92193e 100644 --- a/content/contributing/how/first-time/imposter-syndrome/contents.lr +++ b/content/contributing/how/first-time/imposter-syndrome/contents.lr @@ -1,64 +1,5 @@ -_model: page +_model: redirect --- -sort_key: 1 +new_path: /contributing/first-time/imposter-syndrome/ --- -title: Imposter Syndrome ---- -summary: Don't think you're ready to be an open source contributor? You're wrong. ---- -body: - -There may be a little voice inside your head that is telling you that you're -not ready; that you need to do one more tutorial; that you aren't ready to be -an open source contributor. After all, you're just a beginner. What could you -possibly offer a project like BeeWare? - -I assure you - the little voice in your head is wrong. If you can write code at -all, you can contribute code to open source, and to BeeWare. - -You're not the first person to have those thoughts, either. Even the members of -the core team of this project have these thoughts from time to time. It's -called "imposter syndrome", and it's a really common problem. The good news is -- we're here to help you get over it. - -This tutorial exists to make sure you know exactly what process you have to -follow in order to get your patch merged. In addition to these procedural -instructions, this project has a Code of Conduct. This Code of Conduct is there -to give you confidence that no matter what mistakes you make, you'll be treated -with respect. Everyone makes mistakes - that's a natural part of learning. Our -pledge to you is that we are here to help you learn, not to insult or belittle -you for learning. - -Being an open source contributor doesn't just mean writing code, either. You -can help out by writing documentation, tests, or even giving feedback about the -project (and yes - that includes giving feedback about the contribution -process). Some of these contributions may be the most valuable to the project -as a whole, because you're coming to the project with fresh eyes, so you can -see the errors and assumptions that seasoned contributors have glossed over. - -You can't do any damage, either - either to your own computer, or to the -project as a whole. BeeWare projects don't touch any part of your computer or -operating system that could do any serious damage. Worst case, you'll end up -with a couple of extra files on your hard drive, which can be easily deleted -afterwards. And every contribution you submit to BeeWare is reviewed before it -is integrated into the "official" project, and you'll get feedback to help you -correct any problems that may exist. - -So - don't be afraid to contribute. If you've gotten this far, you've -demonstrated you have an interest in contributing - and that's all you need. We -can help you the rest of the way. - -Now it's time to roll up your sleeves, and `pick a project where you can -contribute`_. - -.. _pick a project where you can contribute: /contributing/how/first-time/what/ - ---- -gutter: - -Connecting with Confident Authenticity ----------------------------------------------- - -Learn more about how to combat imposter syndrome: watch `"Bake the Cookies, -Wear the Dress" `__ by Adrienne -Lowe +_discoverable: no diff --git a/content/contributing/how/first-time/more/contents.lr b/content/contributing/how/first-time/more/contents.lr index bfa5d0e80d..71f8c81f34 100644 --- a/content/contributing/how/first-time/more/contents.lr +++ b/content/contributing/how/first-time/more/contents.lr @@ -1,24 +1,5 @@ -_model: page +_model: redirect --- -title: More Resources +new_path: /contributing/first-time/more/ --- -body: - -These resources come from outside BeeWare, but they are full of useful information. - - * `How to Contribute to Open Source - FreeCodeCamp `_ - * `How to Contribute to an Open Source Project on GitHub - EggHead.io `_ - * `Getting into Open Source for the first time - NearForm `_ - * `Open Source Resources - OpenSource.com `_ - - ------ - -Do you have another link? `Add it to the list! `_ - ---- -summary: There are many more resources for first time contributors ---- -sort_key: 10 ---- -incomplete: no +_discoverable: no diff --git a/content/contributing/how/first-time/setting-up-your-environment/contents.lr b/content/contributing/how/first-time/setting-up-your-environment/contents.lr index ed2ade2909..c751bfee1b 100644 --- a/content/contributing/how/first-time/setting-up-your-environment/contents.lr +++ b/content/contributing/how/first-time/setting-up-your-environment/contents.lr @@ -1,130 +1,5 @@ -_model: page +_model: redirect --- -sort_key: 4 +new_path: /contributing/first-time/setting-up-your-environment/ --- -title: Setting up your environment ---- -summary: How to get your system setup to contribute ---- -_slug: setup ---- -body: - -In order to get contributing, you're going to need to setup a -**development environment** - a place where you can work on code where it can -behave the same as everyone else's environment. - -Many parts of BeeWare use the same tools: a specific version of Python, and -virtual environment controls. - -Python -------- - -Python is a scripting language, which is available on a number of different -operating systems. However, depending on what system you are using, your -version of Python is going to be different. Because of this reason, we specify -exactly which version of Python we expect the code to work with. - -For the following instructions, we're going to assume that you know exactly -which version of Python you need to install. Normally, this is listed in the -``README.md`` file or in the tutorial information. Our `CI -`_ systems have to be told exactly -which version of Python is required, too. So if you're really stuck, try -looking at the :code:`.github/workflows/ci.yml` file for the specific version -you need. - -pyenv -~~~~~~ - -`pyenv `_ is one way to get multiple versions of -Python working on your machine at the same time. It allows you to pick and choose -whichever version you need for a particular project. - - * MacOSX - You can install pyenv via `brew - `_, by running - :code:`brew install pyenv` - * Other - use the `automatic installer `_ - -Once :code:`pyenv` is installed, you need to install the specific Python -version. This information is stored in a :code:`.python-version` file, which -means you can have different versions of Python used in different projects on -your computer. - -To install and set the Python version: - -.. code-block:: bash - - $ cd /path/to/your/project - $ pyenv install 3.12.1 - $ pyenv local 3.12.1 - -More information about pyenv is available on `their website -`_. - -Virtual Environments ---------------------- - -When Python is installed, it provides a single global environment. By default, if you -install a package, it will be installed into this global environment. - -However, if you're working on more than one Python project, it's entirely likely that -those multiple projects will have different - and in some cases, conflicting - -requirements. What you need is a way to isolate each project so that installing a -package for one project won't force that same package to be installed for the second -project. - -This is done using *Virtual Environments*. A Virtual Environment, or ``venv``, is an -isolated environment that can be easily created, destroyed or recreated. Any package -installed in the virtual environment is only accessible *inside* that virtual -environment. Virtual environments are sometimes referred to as a "sandbox" - a safe -place to play, where if you make a mistake, you can knock down everything you've built -and start again. - -Python provides the ``venv`` module to create new virtual environments. Each virtual -environment has a name that can be used to identify the environment. To create a fresh -virtual environment named "my-venv", run: - -.. code-block:: bash - - $ python -m venv my-venv - -The version of Python that you use to create the virtual environment will be the version -that is used by default *inside* the virtual environment. If you've got multiple Python -versions installed, or you're using a tool like ``pyenv`` to manage Python versions, -ensure that the Python version that is currently active (or the version you reference -when invoking the ``-m venv`` command) is the version you intend. Once a virtual -environment has been created, you can't change the Python version that it is using. To -change the Python version, you need to create a fresh virtual environment. - -Invoking ``-m venv`` will *create* the virtual environment, but the environment is not -yet *active*. The virtual environment is a collection of files on disk, stored in a -directory that matches the name of the environment. To activate the virtual environment, -you run one of the files generated as part of the environment: - -.. code-block:: bash - - $ source my-venv/bin/activate - -This will result in a prefix being added to your command line prompt letting you know -you're in a virtual environment: - -.. code-block:: bash - - (my-venv) $ - -While the virtual environment is active, any ``pip install`` command will *only* affect -the virtual environment. It doesn't matter if you change directories - if your prompt -has a prefix, that virtual environment is active. - -If you open a second terminal window, the environment will *not* be active - you need to -re-activate the environment in every terminal session where you want to use the -environment. If you get errors about libraries not being available that you're *certain* -you've installed - check whether your virtual environment is active. - -To deactivate the virtual environment, run: - -.. code-block:: bash - - (my-venv) $ deactivate - -Once deactivated, the prefix will be dropped from the prompt. +_discoverable: no diff --git a/content/contributing/how/first-time/what-is-a/ci/contents.lr b/content/contributing/how/first-time/what-is-a/ci/contents.lr index c9acb0dd17..1f5d7f302f 100644 --- a/content/contributing/how/first-time/what-is-a/ci/contents.lr +++ b/content/contributing/how/first-time/what-is-a/ci/contents.lr @@ -1,25 +1,5 @@ -_model: page +_model: redirect --- -title: CI +new_path: /contributing/first-time/what-is-a/ci/ --- -summary: What is CI, or Continuous Integration ---- -body: - -Continuous integration, or CI, is a way that we can test every code change that is made -to a project. These systems automatically listen for new pull requests and other events, -and automatically run test suites, and other automatic processes. - -We use GitHub's CI system: `Actions `_. Normally -the *build status* of a project is displayed as an image on the project's README file. -Green means the tests have been successful, and red means they have not. Clicking the -image will show you the results of these tests. - ---- -gutter: - -Unsure which CI environment is being used? -------------------------------------------- - -Check for the configuration file. GitHub CI workflows are configured in the -``.github/workflows`` directory. +_discoverable: no diff --git a/content/contributing/how/first-time/what-is-a/contents.lr b/content/contributing/how/first-time/what-is-a/contents.lr index 0196eacc8c..5ca76659f9 100644 --- a/content/contributing/how/first-time/what-is-a/contents.lr +++ b/content/contributing/how/first-time/what-is-a/contents.lr @@ -1,9 +1,5 @@ -_model: page +_model: redirect --- -title: What is...? +new_path: /contributing/first-time/what-is-a/ --- -_slug: ---- -summary: Confused about what something is? We've described a number of things here ---- -sort_key: 5 +_discoverable: no diff --git a/content/contributing/how/first-time/what-is-a/git/contents.lr b/content/contributing/how/first-time/what-is-a/git/contents.lr index d92f58388e..83d0b55b10 100644 --- a/content/contributing/how/first-time/what-is-a/git/contents.lr +++ b/content/contributing/how/first-time/what-is-a/git/contents.lr @@ -1,18 +1,5 @@ -_model: page +_model: redirect --- -title: git +new_path: /contributing/first-time/what-is-a/git/ --- -body: - -:code:`git` is a `Version Control System -`_, which lets us save, store -and share changes to code over time. - -`GitHub `_ is just :code:`git` under the hood, but includes -a lot of helpful things, like a web interface, and nice Pull Requests and Issue -Tracking systems. - ---- -gutter: ---- -summary: What is git anyway? +_discoverable: no diff --git a/content/contributing/how/first-time/what-is-a/package-manager/contents.lr b/content/contributing/how/first-time/what-is-a/package-manager/contents.lr index 43894bf075..86849d0245 100644 --- a/content/contributing/how/first-time/what-is-a/package-manager/contents.lr +++ b/content/contributing/how/first-time/what-is-a/package-manager/contents.lr @@ -1,37 +1,5 @@ -_model: page +_model: redirect --- -title: Package Managers +new_path: /contributing/first-time/what-is-a/package-manager/ --- -summary: How you can manage your installed packages ---- -body: - -Installing software on your computer can be interesting. Sometimes you have to -download a file and then install it yourself, or copy files to specific places -on your computer. - -However, package managers help make this process easier by allowing for the -automation of installation of software. - -There are different levels of package managers: for the operating system level, -as well as one specifically for Python packages. - -MacOSX -------- - -`Homebrew `_ is the standard for installing software on your -Mac. This is the system that's used if you run a :code:`brew install` command. - -Linux ------- - -Depending on what family of operating system you run, you'll use -:code:`apt-get` (for Debian and Ubuntu) or :code:`yum` (for Red Hat and CentOS). - -Python ------------- - -:code:`pip` is the way you can install Python software. Running :code:`pip install` uses -the `Python Packaging Index `_, also known as "PyPI". PyPI is a -central repository for Python code. Many BeeWare projects can be installed using -:code:`pip`. +_discoverable: no diff --git a/content/contributing/how/first-time/what/contents.lr b/content/contributing/how/first-time/what/contents.lr index ccb585ef15..33031e35e0 100644 --- a/content/contributing/how/first-time/what/contents.lr +++ b/content/contributing/how/first-time/what/contents.lr @@ -1,174 +1,5 @@ -_model: page +_model: redirect --- -sort_key: 2 +new_path: /contributing/first-time/what/ --- -title: What should I do? ---- -summary: So you want to help - but where should you start? ---- -body: - -The best place to start with any open source contribution is with something that -fits your knowledge, experience, and area of interest. - -Before you begin ------------------ - -Before you start contributing, it can help to get a feel for the project as a -whole. If you haven't already done the `BeeWare Tutorial -`__, start there. This will give you exposure to the -most important BeeWare tools, so you can see how they all fit together. - -Once you've completed that tutorial, you'll be ready to pick something to work -on. If you had any problems *doing* the tutorial - if you hit a bug, or if the -language used to describe a step wasn't clear - *that's a great place to -start*! If you can turn your experience into an improvement in the tutorial, -the next person who does the tutorial won't hit the same problem. - -However, if your tutorial experience was completely smooth (and we hope it -was!), here are some ideas for where to get involved, depending on your skills -and interests. - -Python programming -------------------- - -Briefcase -~~~~~~~~~ - -If you'd like to contribute to a tool that has a clearly defined problem -statement, but needs bugs squashed and features added, `Briefcase -`__ may be the project for you. Briefcase -is a tool for packaging a Python project as a standalone GUI application. It -takes a ``pyproject.toml`` configuration file, and uses that configuration data -to generate installers or distributable application bundles. - -The Briefcase `issue tracker `__ -has a collection of feature suggestions (and a smaller number of bugs). If this -is your first time contributing, look for one of the tickets labelled `good -first issue -`__ -- these are issues that have been specifically picked for first time -contributors because they should be relatively straightforward to implement. You -may also find it helpful to filter the tickets for the platform you actually use -for development - it will be difficult to fix a Linux bug if you don't have a -Linux machine to use for testing! - -Pick a ticket, leave a comment that you're looking into the problem, and try -to develop a pull request implementing a fix! - -Colosseum -~~~~~~~~~ - -If you like the idea of a very well specified, but complex problem, `Colosseum -`__ is a good place to contribute. -Colosseum is a pure-Python, browser implementation of the CSS layout algorithm. -BeeWare uses it to lay out widgets on the screen of an application. The CSS -specification has an extensive test suite; Colosseum needs to pass all those -tests. - -The Colosseum documentation has a `contribution guide -`__ to walk -you through your first Colosseum contribution. - -GUI programming ----------------- - -If you've got experience with a native widget library - Cocoa on macOS, GTK+ on -Linux, Windows Forms, or the native iOS or Android libraries, you may be able to -help with `Toga `__. Toga is a cross platform -widget toolkit - it provides a common interface for user interface elements like -buttons and trees. - -Toga has a range of interfaces already defined; however, the implementation of -those interfaces isn't complete across all platforms. Pick a widget, and -implement that widget for your platform of choice! - -Even if you *don't* know a native widget library, you may still be able to help -with Toga. Writing new widgets is a lot less complicated than it may seem. -Every platform has documentation for how to use their native APIs, and the -process of translating that platform documentation from another langauge (e.g., -Objective C or C#) is a relatively straightforward process. The existing code -should give you some pointers of how this can be done, and the BeeWare team is -happy to help if you need it. Jump on the `BeeWare Discord -`__ and we'll do whatever we can to help! - -If you're not up for transforming code from one language to another - there's -always the test suite. Toga's core library also has a test suite, but the -coverage of that test suite isn't very good. Pick a widget interface, and see -if you can write a test for it! - -Documentation --------------- - -Good documentation is essential for any successful project. We know that `Toga -`__ and `Briefcase -`__ both need significant improvements to -their documentation. You've done the tutorial; now take a look at the -documentation for `Toga `__ and `Briefcase -`__ and see if you can find a way to improve -the tutorials, references and topics guides that are there. - -Tutorials ----------- - -One of the best ways to contribute is to make sure our introductory and tutorial -documentation is rock solid. Pick a project of interest from the BeeWare suite, -and try to follow the getting started guide and tutorial. If you can't *find* -the getting started guide - then that's the first thing to report! - -As you work through the tutorial, take note of anything that doesn't make sense, -or doesn't work. Then open a bug report for those problems. - -Windows --------- - -If you're a Windows user, BeeWare can *definitely* use your help. The core team -all use Linux and macOS in their daily development, and as a result, it's really -easy for Windows incompatibilities to slip in. This is almost always due to an -oversight. Identifying - and maybe even fixing - problems with running BeeWare -tools on Windows is an immense help. - -Languages ----------- - -Do you speak a language other than English? At present, the core team are all -native speakers of English. Providing translations of documentation, or -completely new tutorials or guides in your native language is a great way to -contribute. Pick a project that already has documentation and translate that -text. Alternatively, start from scratch and write a completely new tutorial. - -If you speak a language with a non-latin character set (e.g., Russian or -Chinese), or a language with a right-to-left script (e.g., Hebrew or Arabic) -you'll be able to point out all the places where we've assumed simple ASCII -encoding or left-to-right conventions. Pick any of the active BeeWare projects, -and try to use it with using your native language. If you hit any problems, -report those problems as bugs; if you are feeling particularly adventurous, see -if you can work out how to *fix* the bug, too. - -Practical usage ----------------- - -One of the best ways for us to determine where our gaps are - in both -documentation and APIs - is for people to actually use BeeWare to build -something. So, if none of the ideas so far sound interesting, why not try -something of your own? Use the BeeWare suite to build that app you've always -wanted - a desktop visualization of a data source, or a mobile application -to track your activities - whatever it is, try to build it. - -We can almost guarantee that you'll hit problems. BeeWare is a still a very -young project. But the problems you hit will give us a great indication of -what needs to be tackled. It will indicate what widgets we need, and what -documentation needs to be improved. So, as you hit problems building your own -app, log issues with the BeeWare projects that caused problems. This will -enable us to identify what we need to improve - and, it might even be a source -of inspiration for you to contribute! - ---- -gutter: - -First Time Contributors ------------------------- - -Want to start small? Once you've poked about a bit in the tutorials, check out -the BeeWare issues marked `[good first issue] -`__ +_discoverable: no diff --git a/content/contributing/how/process/contents.lr b/content/contributing/how/process/contents.lr index c20bb85124..1161a15761 100644 --- a/content/contributing/how/process/contents.lr +++ b/content/contributing/how/process/contents.lr @@ -1,141 +1,5 @@ -_model: page +_model: redirect --- -title: Process +new_path: /contributing/process/ --- -sort_key: 2 ---- -summary: The BeeWare development process ---- -body: - -Overview ---------- - -All changes to code and documentation should be `submitted -`_ via a pull request to the GitHub repository for -the project. - -Most projects have a dedicated contribution guide with details specific to that project, -or specific types of contribution. This documentation can be found on Read the Docs. For -example, `Briefcase's documentation `__ contains -contribution guides for both `code -`__ and -`documentation -`__. - -All submissions should abide by the `BeeWare Code of Conduct -`_. - -Change Notes -------------- - -Several BeeWare projects, notably Briefcase and Toga, require that each pull request is -submitted with a change note. These change notes are compiled together when a new -release is cut for the project, producing the release notes for the new release. - -BeeWare uses `Towncrier `__ to manage -change notes. - -A change note file should be created in the ``changes`` directory and named -using this format:: - - ..rst - -For instance, a pull request that fixes GitHub issue #42 would be named -``42.bugfix.rst``. If a pull request is not associated with a specific issue, then the -pull request number can be used instead. You may need to create the pull request -*without* a change note to get a pull request number allocated, then push an update that -includes the change note with the newly allocated pull request number. - -The change types for the change note should be one of the following: - -* ``feature`` -* ``bugfix`` -* ``doc`` -* ``removal`` -* ``misc`` - -The ``misc`` type is reserved for changes that do not affect users, and don't need to be -noted in the release notes. Minor typographical fixes in documentation, updates to CI -configuration, and bug fixes for features that haven't yet been formally released are -examples of features that would be described using ``misc`` markers. - -A change note should be a single line of text, providing a high level summary of the -change from the perspective of the user, not a deep technical description or -implementation detail. It is distinct from a commit message. A commit message describes -what has been done so that future developers can follow the reasoning for a change. A -change note is a "user facing" description, described in terms of the new capability -that is available as a result of change. It may help to think of the change note as a -press release announcing the change, rather than a commit description. - -For example, if you fix a bug caused by date handling, the commit message or pull -request description might read: - - Added a MM-DD-YYYY format validator to the DateWidget validation chain. - -This describes the change that was made to the implementation - detail that will be -helpful to the person reviewing the code. However, the corresponding change note might -read something like: - - Date widgets can now accept dates in US format. - -This describes the functional change as it will be experienced by end users. A user can -read this description without needing to know anything about the implementation. - -Code style ------------ - -BeeWare's projects use `Pre-commit `__ to automate -code style adherence. These checks are defined in the -``.pre-commit-config.yaml`` file for each repository and are automatically run in -`CI `_ when a Pull Request is -opened. - -To automate the Pre-commit checks in your local development environment with -each ``git`` commit, run :code:`pre-commit install`. - -Included Pre-commit checks: - -* `Black `__ ensures uniform - code formatting -* `docformatter `__ ensures - uniform formatting for docstrings and comments -* `pyupgrade `__ ensures code is using - the latest best practices for Python -* `isort `__ ensures uniform ``import`` - statements -* `flake8 `__ checks for common coding and - syntax issues -* Misc checks that validate structured documents such as TOML files and remove - unnecessary whitespace - -Additional guidelines: - -* Avoid use of "we" in comments, e.g. "Loop over" rather than "We loop over" -* Use underscores, not camelCase, for variable, function and method names -* Use InitialCaps for class names (or for factory functions that return classes) -* Use Sphinx-style docstrings and :pep:`257`; type annotation with :pep:`484` - is optional but encouraged. - - For example:: - - def function_name(param1: int, param2: str) -> bool: - """Example function with types and a docstring. - - :param param1: The first parameter. - :param param2: The second parameter. - - :returns: The return value. True for success, False otherwise. - """ - -* In test docstrings, state the expected behavior that each test demonstrates. - Don't include preambles such as "Tests that" or "Ensures that". -* Reserve ticket references for obscure issues where the ticket has additional - details that can't be easily described in docstrings or comments. Include the - ticket number at the end of a sentence like this:: - - def test_foo(): - """A test docstring looks like this (#123456).""" - -* Unless otherwise specified, follow :pep:`8` (with careful attention paid to `Section 2 - `__). +_discoverable: no diff --git a/content/contributing/how/translations/contents.lr b/content/contributing/how/translations/contents.lr index 8a6222ba2f..0f6e8385da 100644 --- a/content/contributing/how/translations/contents.lr +++ b/content/contributing/how/translations/contents.lr @@ -1,30 +1,5 @@ -_model: page +_model: redirect --- -title: Translations +new_path: /contributing/translations/ --- -body: - -This website -------------- - -Want to help translate or update the content of this website? - -The contents of these pages are mostly written in `Lektor (.lr) files -`__ and `.ini databags -`__. To translate a page, -choose the desired langauge using the globe in the top right and then click -"Edit on GitHub". To translate the databags, `open a .ini file -`__ and -create or edit the section for the specified language (e.g., ``[pt]`` for -Portuguese). - -The BeeWare Tutorial ---------------------- - -We also maintain translations for the `BeeWare tutorial `__. -These translations are managed using `Weblate -`__, a web interface for managing -translations. If you'd like to contribute to these translations, create an account on -Weblate, then join the ``#translations`` channel on `Discord -`__, and tell us your account username. We'll add you -to the translation team and you can get started! +_discoverable: no diff --git a/content/contributing/membership/contents.lr b/content/contributing/membership/contents.lr index 082dbacefc..e77c9c4b65 100644 --- a/content/contributing/membership/contents.lr +++ b/content/contributing/membership/contents.lr @@ -1,102 +1,5 @@ -_model: page +_model: redirect --- -sort_key: 4 +new_path: /membership/ --- -_template: membership.html ---- -title: Membership ---- -summary: How to support BeeWare financially ---- -body: - -Enthusiast membership -~~~~~~~~~~~~~~~~~~~~~ - -If you would like to show your support for the BeeWare community, we invite you to become an **Enthusiast Member** of the BeeWare community for $10/month. - -.. raw:: html - - Become an Enthusiast member - -Enthusiast members can have their name listed on the `Members page `__. - -We also have a scholarship program that grants memberships to individuals who have the potential to advance the BeeWare community in new or interesting ways. If you would like to apply for a scholarship, please contact `the BeeWare Scholarship Team `__. - -Professional membership -~~~~~~~~~~~~~~~~~~~~~~~ - -If you use BeeWare in a professional capacity, we invite you to become a **Professional Member** of the BeeWare community for $50/month. - -.. raw:: html - - Become a Professional Member - -Professional members can have their name listed on the `Members page `__, along with a small avatar, photograph or logo. - -Bronze membership -~~~~~~~~~~~~~~~~~ - -If you are an independent consultancy, sole proprietorship, or other small business, we invite you to become a **Bronze Member** of the BeeWware community for $200/month. - -.. raw:: html - - Become a Bronze Member - -Bronze members can have their name listed on the `Members page `__, along with a medium sized logo, name, and link to a company webpage of their choice. - -If the member company wishes to advertise their `consulting `__, `training `__ or `software development `__ services, they will receive a standard listing on the services pages of their choice. - -Silver membership -~~~~~~~~~~~~~~~~~ - -If you represent a medium-sized business, established independent software vendor, or other mid-range company, we invite you to become a **Silver Member** for $1500/month. - -.. raw:: html - - Become a Silver Member - -Silver members can have their name listed on the `Members page `__, along with a large logo, company name, link to a company page of their choice, and a brief paragraph describing what the company does. - -If the member company wishes to advertise their `consulting `__, `training `__ or `software development `__ services, they will receive a priority listing on the services pages of their choice. - -The company logo will also be put into rotation on the homepage as part of the sponsor's carousel. - -Lastly, Silver members will be provided the option of a posting one item of their choice to BeeWare social media, per 12 month membership period (subject to editorial guidelines). - -Gold membership -~~~~~~~~~~~~~~~ - -If you represent a large corporation or foundation that makes use of BeeWare, we invite you to become a **Gold Member** for $5000/month. - -.. raw:: html - - Become a Gold Member - -Gold members can have their name listed on the `Members page `__, along with a banner logo, company name, link to a company page of their choice, and a brief paragraph describing what the company does. - -The company logo will also be put into rotation on the homepage as part of the sponsor's carousel. - -If the member company wishes to advertise their `consulting `__, `training `__ or `software development `__ services, they will receive a premium listing on the services pages of their choice. - -Gold members will be provided the option of a posting two items of their choice to BeeWare social media per 12 month membership period (subject to editorial guidelines). - -Lastly, once per year, gold members will be offered a 1 hour meeting (over teleconference or in person) with a member of the core team to discuss the BeeWare project. - -Once-off contributions -~~~~~~~~~~~~~~~~~~~~~~ - -Memberships are our preferred way to support BeeWare, as they provide income stability over time. However, we understand that this isn't always compatible with some budgets or corporate expense processes. - -If you can't (or don't want to) become a member of the BeeWare project, you can make a once-off financial contribution. - -.. raw:: html - - Make a once-off contribution - -If the size of a once-off contributions meets or exceeds the value of a 12 month subscription, you'll be eligible to the benefits of that subscription level. - -Other options -~~~~~~~~~~~~~ - -If you'd like to talk to someone about other branding or sponsorship opportunities, or you'd like other payment options for your membership, please direct enquiries to `Russell Keith-Magee `__. +_discoverable: no diff --git a/content/contributing/how/process/contents+es.lr b/content/contributing/process/contents+es.lr similarity index 100% rename from content/contributing/how/process/contents+es.lr rename to content/contributing/process/contents+es.lr diff --git a/content/contributing/how/process/contents+pt.lr b/content/contributing/process/contents+pt.lr similarity index 100% rename from content/contributing/how/process/contents+pt.lr rename to content/contributing/process/contents+pt.lr diff --git a/content/contributing/how/process/contents+zh_TW.lr b/content/contributing/process/contents+zh_TW.lr similarity index 100% rename from content/contributing/how/process/contents+zh_TW.lr rename to content/contributing/process/contents+zh_TW.lr diff --git a/content/contributing/process/contents.lr b/content/contributing/process/contents.lr new file mode 100644 index 0000000000..12a7d2ea24 --- /dev/null +++ b/content/contributing/process/contents.lr @@ -0,0 +1,143 @@ +_model: page +--- +title: Development Process +--- +sort_key: 2 +--- +summary: The BeeWare development process +--- +body: + +Overview +--------- + +All changes to code and documentation should be `submitted +`_ via a pull request to the GitHub repository for +the project. + +Most projects have a dedicated contribution guide with details specific to that project, +or specific types of contribution. This documentation can be found on Read the Docs. For +example, `Briefcase's documentation `__ contains +contribution guides for both `code +`__ and +`documentation +`__. + +All submissions should abide by the `BeeWare Code of Conduct +`_. + +Change Notes +------------- + +Several BeeWare projects, notably Briefcase and Toga, require that each pull request is +submitted with a change note. These change notes are compiled together when a new +release is cut for the project, producing the release notes for the new release. + +BeeWare uses `Towncrier `__ to manage +change notes. + +A change note file should be created in the ``changes`` directory and named +using this format:: + + ..rst + +For instance, a pull request that fixes GitHub issue #42 would be named +``42.bugfix.rst``. If a pull request is not associated with a specific issue, then the +pull request number can be used instead. You may need to create the pull request +*without* a change note to get a pull request number allocated, then push an update that +includes the change note with the newly allocated pull request number. + +The change types for the change note should be one of the following: + +* ``feature`` +* ``bugfix`` +* ``doc`` +* ``removal`` +* ``misc`` + +The ``misc`` type is reserved for changes that do not affect users, and don't need to be +noted in the release notes. Minor typographical fixes in documentation, updates to CI +configuration, and bug fixes for features that haven't yet been formally released are +examples of features that would be described using ``misc`` markers. + +A change note should be a single line of text, providing a high level summary of the +change from the perspective of the user, not a deep technical description or +implementation detail. It is distinct from a commit message. A commit message describes +what has been done so that future developers can follow the reasoning for a change. A +change note is a "user facing" description, described in terms of the new capability +that is available as a result of change. It may help to think of the change note as a +press release announcing the change, rather than a commit description. + +For example, if you fix a bug caused by date handling, the commit message or pull +request description might read: + + Added a MM-DD-YYYY format validator to the DateWidget validation chain. + +This describes the change that was made to the implementation - detail that will be +helpful to the person reviewing the code. However, the corresponding change note might +read something like: + + Date widgets can now accept dates in US format. + +This describes the functional change as it will be experienced by end users. A user can +read this description without needing to know anything about the implementation. + +Code style +----------- + +BeeWare's projects use `Pre-commit `__ to automate +code style adherence. These checks are defined in the +``.pre-commit-config.yaml`` file for each repository and are automatically run in +`CI `_ when a Pull Request is +opened. + +To automate the Pre-commit checks in your local development environment with +each ``git`` commit, run :code:`pre-commit install`. + +Included Pre-commit checks: + +* `Black `__ ensures uniform + code formatting +* `docformatter `__ ensures + uniform formatting for docstrings and comments +* `pyupgrade `__ ensures code is using + the latest best practices for Python +* `isort `__ ensures uniform ``import`` + statements +* `flake8 `__ checks for common coding and + syntax issues +* Misc checks that validate structured documents such as TOML files and remove + unnecessary whitespace + +Additional guidelines: + +* Avoid use of "we" in comments, e.g. "Loop over" rather than "We loop over" +* Use underscores, not camelCase, for variable, function and method names +* Use InitialCaps for class names (or for factory functions that return classes) +* Use Sphinx-style docstrings and :pep:`257`; type annotation with :pep:`484` + is optional but encouraged. + + For example:: + + def function_name(param1: int, param2: str) -> bool: + """Example function with types and a docstring. + + :param param1: The first parameter. + :param param2: The second parameter. + + :returns: The return value. True for success, False otherwise. + """ + +* In test docstrings, state the expected behavior that each test demonstrates. + Don't include preambles such as "Tests that" or "Ensures that". +* Reserve ticket references for obscure issues where the ticket has additional + details that can't be easily described in docstrings or comments. Include the + ticket number at the end of a sentence like this:: + + def test_foo(): + """A test docstring looks like this (#123456).""" + +* Unless otherwise specified, follow :pep:`8` (with careful attention paid to `Section 2 + `__). +--- +hide_from_index: yes diff --git a/content/contributing/how/translations/contents+de.lr b/content/contributing/translations/contents+de.lr similarity index 100% rename from content/contributing/how/translations/contents+de.lr rename to content/contributing/translations/contents+de.lr diff --git a/content/contributing/how/translations/contents+es.lr b/content/contributing/translations/contents+es.lr similarity index 100% rename from content/contributing/how/translations/contents+es.lr rename to content/contributing/translations/contents+es.lr diff --git a/content/contributing/how/translations/contents+pt.lr b/content/contributing/translations/contents+pt.lr similarity index 100% rename from content/contributing/how/translations/contents+pt.lr rename to content/contributing/translations/contents+pt.lr diff --git a/content/contributing/translations/contents.lr b/content/contributing/translations/contents.lr new file mode 100644 index 0000000000..b59ebc7c91 --- /dev/null +++ b/content/contributing/translations/contents.lr @@ -0,0 +1,46 @@ +_model: page +--- +title: Translations +--- +sort_key: 3 +--- +body: + +This website +------------- + +Want to help translate or update the content of this website? + +The contents of these pages are mostly written in `Lektor (.lr) files +`__ and `.ini databags +`__. To translate a page, +choose the desired langauge using the globe in the top right and then click +"Edit on GitHub". To translate the databags, `open a .ini file +`__ and +create or edit the section for the specified language (e.g., ``[pt]`` for +Portuguese). + +The BeeWare Tutorial +--------------------- + +We also maintain translations for the `BeeWare tutorial `__. +These translations are managed using `Weblate +`__, a web interface for managing +translations. If you'd like to contribute to these translations, create an account on +`Weblate `__, then join the +``#translations`` channel on Discord, and tell us your Weblate account username. +We'll add you to the translation team on Weblate and you can get started! + +Translating? Join the BeeWare team on Discord +---------------------------------------------------- + +If you're interested in helping out with these translations, consider joining +the BeeWare `Discord `__. +You'll find the ``#translations`` channel, where the team can answer any +questions and provide guidance. +--- +_hidden: no +--- +summary: Do you know multiple languages? Help us translate this website and the BeeWare tutorial! +--- +hide_from_index: yes diff --git a/content/cricket/contents.lr b/content/cricket/contents.lr index 6f5f06eb96..4c5026a0fd 100644 --- a/content/cricket/contents.lr +++ b/content/cricket/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /cricket/ ---- -new_path: /project/projects/tools/cricket/ +new_path: /project/applications/cricket/ --- _discoverable: no diff --git a/content/duvet/contents.lr b/content/duvet/contents.lr index 89afe1ae04..124d2ed2e7 100644 --- a/content/duvet/contents.lr +++ b/content/duvet/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /duvet/ ---- -new_path: /project/projects/tools/duvet/ +new_path: /project/applications/duvet/ --- _discoverable: no diff --git a/content/galley/contents.lr b/content/galley/contents.lr index 301b014ad9..e7ec546e84 100644 --- a/content/galley/contents.lr +++ b/content/galley/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /galley/ ---- -new_path: /project/projects/tools/galley/ +new_path: /project/applications/galley/ --- _discoverable: no diff --git a/content/contributing/membership/contents+es.lr b/content/membership/contents+es.lr similarity index 100% rename from content/contributing/membership/contents+es.lr rename to content/membership/contents+es.lr diff --git a/content/contributing/membership/contents+pt.lr b/content/membership/contents+pt.lr similarity index 100% rename from content/contributing/membership/contents+pt.lr rename to content/membership/contents+pt.lr diff --git a/content/contributing/membership/contents+zh_TW.lr b/content/membership/contents+zh_TW.lr similarity index 100% rename from content/contributing/membership/contents+zh_TW.lr rename to content/membership/contents+zh_TW.lr diff --git a/content/membership/contents.lr b/content/membership/contents.lr new file mode 100644 index 0000000000..082dbacefc --- /dev/null +++ b/content/membership/contents.lr @@ -0,0 +1,102 @@ +_model: page +--- +sort_key: 4 +--- +_template: membership.html +--- +title: Membership +--- +summary: How to support BeeWare financially +--- +body: + +Enthusiast membership +~~~~~~~~~~~~~~~~~~~~~ + +If you would like to show your support for the BeeWare community, we invite you to become an **Enthusiast Member** of the BeeWare community for $10/month. + +.. raw:: html + + Become an Enthusiast member + +Enthusiast members can have their name listed on the `Members page `__. + +We also have a scholarship program that grants memberships to individuals who have the potential to advance the BeeWare community in new or interesting ways. If you would like to apply for a scholarship, please contact `the BeeWare Scholarship Team `__. + +Professional membership +~~~~~~~~~~~~~~~~~~~~~~~ + +If you use BeeWare in a professional capacity, we invite you to become a **Professional Member** of the BeeWare community for $50/month. + +.. raw:: html + + Become a Professional Member + +Professional members can have their name listed on the `Members page `__, along with a small avatar, photograph or logo. + +Bronze membership +~~~~~~~~~~~~~~~~~ + +If you are an independent consultancy, sole proprietorship, or other small business, we invite you to become a **Bronze Member** of the BeeWware community for $200/month. + +.. raw:: html + + Become a Bronze Member + +Bronze members can have their name listed on the `Members page `__, along with a medium sized logo, name, and link to a company webpage of their choice. + +If the member company wishes to advertise their `consulting `__, `training `__ or `software development `__ services, they will receive a standard listing on the services pages of their choice. + +Silver membership +~~~~~~~~~~~~~~~~~ + +If you represent a medium-sized business, established independent software vendor, or other mid-range company, we invite you to become a **Silver Member** for $1500/month. + +.. raw:: html + + Become a Silver Member + +Silver members can have their name listed on the `Members page `__, along with a large logo, company name, link to a company page of their choice, and a brief paragraph describing what the company does. + +If the member company wishes to advertise their `consulting `__, `training `__ or `software development `__ services, they will receive a priority listing on the services pages of their choice. + +The company logo will also be put into rotation on the homepage as part of the sponsor's carousel. + +Lastly, Silver members will be provided the option of a posting one item of their choice to BeeWare social media, per 12 month membership period (subject to editorial guidelines). + +Gold membership +~~~~~~~~~~~~~~~ + +If you represent a large corporation or foundation that makes use of BeeWare, we invite you to become a **Gold Member** for $5000/month. + +.. raw:: html + + Become a Gold Member + +Gold members can have their name listed on the `Members page `__, along with a banner logo, company name, link to a company page of their choice, and a brief paragraph describing what the company does. + +The company logo will also be put into rotation on the homepage as part of the sponsor's carousel. + +If the member company wishes to advertise their `consulting `__, `training `__ or `software development `__ services, they will receive a premium listing on the services pages of their choice. + +Gold members will be provided the option of a posting two items of their choice to BeeWare social media per 12 month membership period (subject to editorial guidelines). + +Lastly, once per year, gold members will be offered a 1 hour meeting (over teleconference or in person) with a member of the core team to discuss the BeeWare project. + +Once-off contributions +~~~~~~~~~~~~~~~~~~~~~~ + +Memberships are our preferred way to support BeeWare, as they provide income stability over time. However, we understand that this isn't always compatible with some budgets or corporate expense processes. + +If you can't (or don't want to) become a member of the BeeWare project, you can make a once-off financial contribution. + +.. raw:: html + + Make a once-off contribution + +If the size of a once-off contributions meets or exceeds the value of a 12 month subscription, you'll be eligible to the benefits of that subscription level. + +Other options +~~~~~~~~~~~~~ + +If you'd like to talk to someone about other branding or sponsorship opportunities, or you'd like other payment options for your membership, please direct enquiries to `Russell Keith-Magee `__. diff --git a/content/ouroboros/contents.lr b/content/ouroboros/contents.lr index 181d7b5be8..fef6f8647c 100644 --- a/content/ouroboros/contents.lr +++ b/content/ouroboros/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /ouroboros/ ---- -new_path: /project/projects/libraries/ouroboros/ +new_path: /project/attic/ouroboros/ --- _discoverable: no diff --git a/content/project/about/contents.lr b/content/project/about/contents.lr index c205bb31d7..95f16cf8b7 100644 --- a/content/project/about/contents.lr +++ b/content/project/about/contents.lr @@ -1,135 +1,5 @@ -name: About the BeeWare Project +_model: redirect --- -summary: The history and philosophy of the BeeWare Project +new_path: /about/ --- -title: About BeeWare ---- -body: - -History -======= - -The BeeWare project started with a simple question: Why aren't the tools that we use as Python developers improving at the same rate as the rest of the technology we use on a daily basis? - -Python has proven itself as a highly capable language - approachable for newcomers, but powerful in the hands of experts. Python is rapidly becoming a major part of the data analysis, scientific computing, and web development landscape. And initiatives like `Django Girls`_ have demonstrated that using Python, it is possible to provide a 1-day training courses that introducing people with no programming experience to Python; and at the end of a day, attendees have developed and deployed a database-backed dynamic website, deployed to a publicly visible server. - -.. _Django Girls: https://djangogirls.org/ - -However, the developer experience for someone writing Python sometimes reflects more of the early 90's than the new millennium. The default development environment for Python is still an 80x25 console window. For users who have come from a Windows or Apple environment, where they're used to highly detailed, well designed graphical interfaces, this 30 year flashback can be a completely alien experience. - -And, yes, there are IDEs (Integrated Development Environments) that provide a native application experience for writing code. But those tools require you to adopt, wholesale, the IDE's way of looking at a project. They often introduce as many headaches to the development process as they solve. - -And so, we're left with an interesting schism, between the "old way" of Unix development in a console window, and the "new way" of all-in-one IDEs. - -The Unix Philosophy -~~~~~~~~~~~~~~~~~~~ - -However, it doesn't have to be that way. The core tenet of the Unix Philosophy is that "each tool does one thing, well". This is a very powerful philosophy, and it enables the composition of extremely powerful toolchains by putting together a suite of extremely focussed, independent tools. - -Unfortunately, most UNIX tools have convolved this to also mean "all tools must use a console interface". However, there's nothing in the UNIX philosophy that says that tools have to use a console interface - it's just turned out that way. - -The BeeWare project started with the premise we can have the best of both worlds. We can have a chain of composable tools that each do one thing, well. But those tools can also expose their functionality using a rich graphical user interface. - -The goal -======== - -The end goal of the BeeWare project: To be able to do for mobile and desktop user-facing software the same thing that Django has done for web software - to put into the hands of users a set of tools and libraries that enables them to develop rich, native user interfaces, and deploy them to their devices. This includes: - - * Tools to enable Python to run on different devices, - * Tools to package a Python project so it can run on those devices, - * Libraries to access the native widgets and capabilities of devices, - * Tools to help develop, debug, analyze and these projects. - -This aim is that this set of tools will be easy enough to use for complete newcomers to use in a Django Girls-like setting; but powerful enough that they could be used to drive the next Instagram, Pinterest or Disqus. - -Most importantly, it aims to do all this as an Open Source community. The Open Source development process has proven itself to be the most reliable way to develop robust and reliable software, and the fact that anyone can access the software means that everyone can start with the same set of excellent tools, be they expert or enthusiastic amateur. - -Python everywhere -~~~~~~~~~~~~~~~~~ - -A modern computing project can't ignore the biggest development in computing of the last 10 years. Python prides itself on being a cross-platform language. 10 years ago, being cross-platform meant being available for Windows, macOS and Linux. These days, mobile computing is much more important. Despite this, there aren't many good options for Python programming on mobile platforms, and cross-platform mobile coding is still elusive. - -BeeWare embraces mobile and other emerging platforms (like watches and set-top-boxes) as a first class citizen of the computing ecosystem - because if people have these devices, why shouldn't they be able to write software for them in Python. - -Native everywhere -~~~~~~~~~~~~~~~~~~ - -It's easy to use themes to achieve cross-platform. However, it's easy to spot apps that have been built using themes - they're the ones that don't behave quite like any other app. Widgets don't look *quite* right, or there's a menu bar on a window in an OS X app. Themes can get quite close - but there are always telltale signs. - -On top of that, native widgets are always faster than a themed generic widget. After all, you're using native system capability that has been tuned and optimized, not a drawing engine that's been layered on top of a generic widget. - -Themes also miss many of the accessibility benefits of native platforms. Modern OS authors spend a lot of time tuning affordances for people with impaired mobility, vision or cognition. If you use native widgets, you usually get these affordances for free. If you reimplement widgets with a theme, you also have to re-implement the affordances. - -BeeWare uses native widgets and native functionality, rather than using a theme-based approach to application development. - -Python native -~~~~~~~~~~~~~ - -BeeWare is also an unapologetically "Python first" framework. We like Python. We like the way it looks, and the way it works. If Python isn't available as a first-class option on a particular platform, we'll do whatever is necessary to make Python available as a development language. And when we have the opportunity to embrace Python idiom for an API or a design, we're going to do just that. That means we're going to use generators, context managers, `yield from` asynchronous calls, and more, in order to provide the best Python-native API for cross-platform app development. - -We're also looking to the future - this means that we support Python 3 exclusively. - -Native experience -~~~~~~~~~~~~~~~~~ - -The experience of using any tool starts with the installation process. Part of BeeWare's "Native everywhere" philosophy is adopting appropriate native mechanisms for installation. If you're using a user-space tool, it should be presented to you as a package that is to be installed in the same way you would install any other tool - be that through an app store, an installer, or a simple executable package. End users shouldn't know that you've written the application in Python. - -But if you're using a developer tool or library, then it should integrate with your development environment. And since we're using Python, that means you should be able to install it into your virtual environment using `pip install` and nothing more. No C-extensions, no compilers, no setting system paths or environment variables - Just install it, import it, and start writing (or running) code. - -More than just code -=================== - -It's about more than just code, though. A successful software project requires documentation, design skills, feedback and bug reports. The BeeWare community acknowledges that *all* contributions are important - not just the ones that come as a pull request on GitHub. - -Even then, it's easy to think of a project in a vacuum, as the sum of all contributions. But that's never the case. An open source project is about community. - -Diversity and inclusion -~~~~~~~~~~~~~~~~~~~~~~~ - -A diverse community is a strong community. This means accepting people of all levels of experience, from all backgrounds, of all races, creeds, orientations and expressions. The BeeWare project is committed to developing and maintaining a inclusive, diverse and welcoming community. - -To back this up, we have an open offer to mentor anyone who wants to get involved as a contributor, and a `Code of Conduct`_ that is rigorously enforced. Any reports of violations of that code of conduct - even by senior community members - will be treated with respect and actioned appropriately. - -.. _Code of Conduct: /community/behavior/code-of-conduct/ - -Healthy and sustainable -~~~~~~~~~~~~~~~~~~~~~~~ - -It's also important to make sure that the community is accessible and sustainable. It's unfortunately become an accepted part of Open Source culture that "true" Open Source projects have to be developed entirely by volunteers. This acts as a barrier to entry for many groups - the only people able to spend their free time volunteering are those that *have* free time. - -It also frequently leads to burnout and other mental health issues amongst contributors. The fact that depression, anxiety, and burnout are so common in software development communities shouldn't be considered a badge of honour, or a demonstration of how committed a development team can be. It's a problem that needs to be tackled head on, and addressed in the same way a software bug would be addressed - with immediate workarounds, and long term plans to remove the systemic cause of the problem. - -While we place incredible value on the contributions of volunteers, we also know that volunteer efforts alone aren't the way to develop a healthy and sustainable community. For that reason, financial sustainability is a key consideration in the operation of the BeeWare project. As a community, we don't ignore the role that money has to play in providing the resources that allows people to begin and continue to contribute. We will, as a community, provide accepted mechanisms for individuals to monetize their work in meaningful ways, and wherever possible, compensate people for their work - without compromising the ideals of Open Source development. - -BeeWare: The IDEs of Python -=========================== - -This is BeeWare. We're incredibly excited about what the future holds for Python. We hope you'll join us on this journey. - ---- -gutter: - -* `History`_ - - `The Unix Philosophy`_ -* `The Goal`_ - - `Python everywhere`_ - - `Native everywhere`_ - - `Python native`_ - - `Native experience`_ -* `More than just code`_ - - `Diversity and inclusion`_ - - `Healthy and sustainable`_ - -.. _`History`: ./#history -.. _`The Unix Philosophy`: ./#the-unix-philosophy -.. _`The Goal`: ./#the-goal -.. _`Python everywhere`: ./#python-everywhere -.. _`Native everywhere`: ./#native-everywhere -.. _`Python native`: ./#python-native -.. _`Native experience`: ./#native-experience -.. _`More than just code`: ./#more-than-just-code -.. _`Diversity and inclusion`: ./#diversity-and-inclusion -.. _`Healthy and sustainable`: ./#healthy-and-sustainable - ---- -sort_key: 2 +_discoverable: no diff --git a/content/project/projects/tools/bugjar/bugjar.png b/content/project/applications/bugjar/bugjar.png similarity index 100% rename from content/project/projects/tools/bugjar/bugjar.png rename to content/project/applications/bugjar/bugjar.png diff --git a/content/project/projects/tools/bugjar/contents+es.lr b/content/project/applications/bugjar/contents+es.lr similarity index 100% rename from content/project/projects/tools/bugjar/contents+es.lr rename to content/project/applications/bugjar/contents+es.lr diff --git a/content/project/applications/bugjar/contents.lr b/content/project/applications/bugjar/contents.lr new file mode 100644 index 0000000000..e14ab2e5ab --- /dev/null +++ b/content/project/applications/bugjar/contents.lr @@ -0,0 +1,45 @@ +name: Bugjar +--- +project_type: application +--- +maturity: experimental +--- +languages: py +--- +platforms: macOS +--- +short_description: A interactive graphical debugger for Python code. +--- +description: + +Anyone who learned to code in the mid to late 80s probably spent some +time with a Borland compiler -- probably either Turbo Pascal or Turbo C. +One of the best features of the Turbo compilers was their IDE -- and +in particular, a really good visual debugger that would let you inspect +code while it was running. + +Then we all moved to Unix, and somehow forgot what a good debugger was. +GDB is perfectly functional, but isn't very intuitive. GDB gives you +perfect control over the execution of your code, but bad contextual +information to let you know what control you should be exercising. + +Then came Python. Python's execution model contains excellent debugging +hooks, and supplies PDB as a proof of concept. PDB is an interface that +shares many similarities with GDB -- text mode, fantastic control, but +very bad contextual information. + +So - enter ``bugjar``. A graphical interface for debugging code. +PDB, but with the context to help you step through code in a meaningful way. + +--- +help_required: +--- +rtfd_name: bugjar +--- +customlogo: yes +--- +image: bugjar.png +--- +github_repo: beeware/bugjar +--- +sort_key: 1 diff --git a/content/project/applications/contents.lr b/content/project/applications/contents.lr new file mode 100644 index 0000000000..d8542716c3 --- /dev/null +++ b/content/project/applications/contents.lr @@ -0,0 +1,15 @@ +_model: project-type +--- +title: Applications +--- +short_description: Standalone end-user-projects +--- +hide_from_project: yes +--- +category_type: application +--- +important: yes +--- +project_page_description: Standalone end-user-projects built using BeeWare tools, including: +--- +gutter: Applications are standalone end-user application. Although applications are written in Python, this is an implementation detail - you shouldn't ever be aware of this fact. Applications are installed and run the same way as any other end-user application on your computer. diff --git a/content/project/projects/tools/cricket/contents+ar.lr b/content/project/applications/cricket/contents+ar.lr similarity index 100% rename from content/project/projects/tools/cricket/contents+ar.lr rename to content/project/applications/cricket/contents+ar.lr diff --git a/content/project/projects/tools/cricket/contents+es.lr b/content/project/applications/cricket/contents+es.lr similarity index 100% rename from content/project/projects/tools/cricket/contents+es.lr rename to content/project/applications/cricket/contents+es.lr diff --git a/content/project/applications/cricket/contents.lr b/content/project/applications/cricket/contents.lr new file mode 100644 index 0000000000..693006ebed --- /dev/null +++ b/content/project/applications/cricket/contents.lr @@ -0,0 +1,51 @@ +name: Cricket +--- +short_description: Test runner GUI that finds failures fast +--- +description: + + +Cricket is a graphical tool that helps projects with large test suites **identify failures without waiting** for all your tests to finish. + +Normal unittest test runners dump all output to the console, and provide very +little detail while the suite is running. As a result: + + * You can't start looking at failures until the test suite has completed running, + + * It isn't a very accessible format for identifying patterns in test failures, + + * It can be hard (or cumbersome) to re-run any tests that have failed. + +--- +help_required: Needs to be ported to Toga +--- +maturity: beta +--- +languages: py +--- +platforms: macOS, linux, win +--- +project_type: application +--- +pun: + +`Test Cricket`_ is the most prestigious version of +the game of cricket. Games last for up to 5 days... just like running some +test suites. The usual approach for making cricket watchable is a generous +dose of beer; in programming, `Balmer Peak`_ limits come into effect, so +something else is required... + +.. _Test Cricket: https://en.wikipedia.org/wiki/Test_cricket +.. _Balmer Peak: https://xkcd.com/323/ +--- +rtfd_name: cricket +--- +customlogo: yes +--- +showcase: no +--- +image: cricket.png +--- +github_repo: beeware/cricket +--- +sort_key: 1 diff --git a/content/project/projects/tools/cricket/cricket.png b/content/project/applications/cricket/cricket.png similarity index 100% rename from content/project/projects/tools/cricket/cricket.png rename to content/project/applications/cricket/cricket.png diff --git a/content/project/projects/tools/duvet/contents+de.lr b/content/project/applications/duvet/contents+de.lr similarity index 100% rename from content/project/projects/tools/duvet/contents+de.lr rename to content/project/applications/duvet/contents+de.lr diff --git a/content/project/projects/tools/duvet/contents+es.lr b/content/project/applications/duvet/contents+es.lr similarity index 100% rename from content/project/projects/tools/duvet/contents+es.lr rename to content/project/applications/duvet/contents+es.lr diff --git a/content/project/applications/duvet/contents.lr b/content/project/applications/duvet/contents.lr new file mode 100644 index 0000000000..faae7ab72c --- /dev/null +++ b/content/project/applications/duvet/contents.lr @@ -0,0 +1,32 @@ +name: Duvet +--- +project_type: application +--- +maturity: alpha +--- +languages: py +--- +platforms: independent +--- +short_description: Coverage visualization tool +--- +description: Duvet is a GUI tool for visualizing code coverage results produced by `coverage.py `__. +--- +help_required: +--- +pun: Because a duvet doesn't just provide coverage - it keeps you warm and cozy. +--- +incomplete: yes +--- +rtfd_name: duvet +--- +customlogo: yes +--- +image: duvet.png +--- +github_repo: + +beeware/duvet + +--- +sort_key: 1 diff --git a/content/project/projects/tools/duvet/duvet.png b/content/project/applications/duvet/duvet.png similarity index 100% rename from content/project/projects/tools/duvet/duvet.png rename to content/project/applications/duvet/duvet.png diff --git a/content/project/projects/tools/galley/contents+es.lr b/content/project/applications/galley/contents+es.lr similarity index 100% rename from content/project/projects/tools/galley/contents+es.lr rename to content/project/applications/galley/contents+es.lr diff --git a/content/project/applications/galley/contents.lr b/content/project/applications/galley/contents.lr new file mode 100644 index 0000000000..a124965fdd --- /dev/null +++ b/content/project/applications/galley/contents.lr @@ -0,0 +1,31 @@ +name: Galley +--- +project_type: application +--- +maturity: experimental +--- +languages: py +--- +platforms: independent +--- +short_description: A GUI tool for reviewing RST/Sphinx documentation +--- +description: + +Galley is a GUI tool to assist in drafting documentation. + + +--- +help_required: +--- +pun: **galley** *n.* a printer's proof in the form of long single-column strips, not in sheets or pages. +--- +incomplete: yes +--- +customlogo: yes +--- +image: galley.png +--- +github_repo: beeware/galley +--- +sort_key: 1 diff --git a/content/project/projects/tools/galley/galley.png b/content/project/applications/galley/galley.png similarity index 100% rename from content/project/projects/tools/galley/galley.png rename to content/project/applications/galley/galley.png diff --git a/content/project/projects/applications/podium/contents+es.lr b/content/project/applications/podium/contents+es.lr similarity index 100% rename from content/project/projects/applications/podium/contents+es.lr rename to content/project/applications/podium/contents+es.lr diff --git a/content/project/projects/applications/podium/contents+pt.lr b/content/project/applications/podium/contents+pt.lr similarity index 100% rename from content/project/projects/applications/podium/contents+pt.lr rename to content/project/applications/podium/contents+pt.lr diff --git a/content/project/applications/podium/contents.lr b/content/project/applications/podium/contents.lr new file mode 100644 index 0000000000..95c9642bfd --- /dev/null +++ b/content/project/applications/podium/contents.lr @@ -0,0 +1,48 @@ +name: Podium +--- +project_type: application +--- +maturity: beta +--- +languages: py +--- +platforms: independent +--- +short_description: A markup-based slide presentation tool +--- +description: + +Developers go to conferences. And when they do, they need slide decks. + +Unfortunately, while presentation tools like `Keynote `__ and `PowerPoint `__ are great for business presentations, they aren't well suited to the needs of developers. The mainstay of developer presentations -- code samples -- are generally painful to add to a Keynote presentation. + +These presentation tools also come from a WYSIWYG (What You See Is What You Get) tradition. This can be powerful, because it makes it easy to put anything you want onto a slide. But it can also be painful, because you end up spending all your time pushing pixels into the right place, instead of focussing on the content of your talk. And if you want to make a style change, you may need to apply that change manually to every slide. The lessons of separating content from markup can't be applied to a WYSIWYG world. + +On top of all that, the document formats for Keynote and Powerpoint are binary blobs -- they don't lend themselves to version control, collaborative editing, and so on. + +The developer response to this has been to use HTML5. Recent years have seen the development of a number of HTML-based presentation tools, like prezi, `deck.js `__, `keydown `__, and `showoff `__. These tools exploit the power of HTML5 to make full screen presentations. + +However, by using browser technology as the basis for these tools, they miss one very important feature of WYSIWYG presentation tools: presenter mode. + +One of the big features of Keynote and Powerpoint is that they aren't just decks of slides -- they have presenter notes and timing tools, and the display shown to the audience isn't the same as the display shown to the presenter. + +Many of these tools also assume that you have a good WiFi connection, and will be able to display your content live off the internet... which if you've ever been to a developer conference, you'll know is a risky proposition. + +Podium attempts to bridge the gap between these two poles. It is comprised of: + +- A simple, text-based markup format, focussed on the needs of developer presentations. +- A graphical presentation tool that has a presenter display independent of the slide display. +--- +help_required: +--- +pun: +--- +customlogo: yes +--- +image: podium.png +--- +github_repo: beeware/podium +--- +important: yes +--- +sort_key: 0 diff --git a/content/project/projects/applications/podium/podium.png b/content/project/applications/podium/podium.png similarity index 100% rename from content/project/projects/applications/podium/podium.png rename to content/project/applications/podium/podium.png diff --git a/content/project/projects/attic/batavia/batavia.png b/content/project/attic/batavia/batavia.png similarity index 100% rename from content/project/projects/attic/batavia/batavia.png rename to content/project/attic/batavia/batavia.png diff --git a/content/project/projects/attic/batavia/contents+ar.lr b/content/project/attic/batavia/contents+ar.lr similarity index 100% rename from content/project/projects/attic/batavia/contents+ar.lr rename to content/project/attic/batavia/contents+ar.lr diff --git a/content/project/projects/attic/batavia/contents+es.lr b/content/project/attic/batavia/contents+es.lr similarity index 100% rename from content/project/projects/attic/batavia/contents+es.lr rename to content/project/attic/batavia/contents+es.lr diff --git a/content/project/attic/batavia/contents.lr b/content/project/attic/batavia/contents.lr new file mode 100644 index 0000000000..d0c767bf2d --- /dev/null +++ b/content/project/attic/batavia/contents.lr @@ -0,0 +1,66 @@ +name: Batavia +--- +project_type: bridge +--- +maturity: alpha +--- +languages: py, js +--- +platforms: browser +--- +short_description: A Javascript implementation of the Python virtual machine +--- +attic: yes +--- +description: + +Batavia is an implementation of the Python virtual machine, written in Javascript. With Batavia, you can run Python bytecode in your browser. + +It honours Python 3.4.4+ syntax and conventions, and lets you reference objects and classes defined natively in JavaScript. + +--- +help_required: + +So you want to contribute to an Open Source project? Batavia is a great place to start. +`Here are instructions on contributing to Batavia. `__ +--- +pun: + + + +On 27 October, 1628, *Commandeur* Francisco Pelsaert took command of the +*Batavia*, and with 340 passengers and crew, set sail from Texel. + +Their destination? The Spice Islands - or more specifically, island of Java +in the Dutch East Indies (now part of Indonesia). + +**The Batavia was... a Java ship (da-dum 🥁!).** + +Interestingly, during the voyage, Ariaen Jacobsz and *onderkoopman* Jeronimus +Cornelisz incited a mutiny, because they didn't want to go to Java - they +wanted to escape to start a new life somewhere else. As a result of the +mutiny, on 4 June 1629, the Batavia ran aground on Morning Reef, part of the +Houtman Abrolhos, about 450km North of Perth, Western Australia, where this +project was conceived. + +The `full story of the Batavia`_ is known to most Western Australian +schoolchildren, and is a harrowing tale of intrigue, savagery, and murder. *It +serves as a reminder of what can happen when you force people to go to Java* +:-) + +The wreck of the Batavia was recovered in the 1970s, and now stands in the +`shipwrecks gallery of the Western Australian Maritime Museum`_. + +.. _full story of the Batavia: https://en.wikipedia.org/wiki/Batavia_(ship) +.. _shipwrecks gallery of the Western Australian Maritime Museum: http://museum.wa.gov.au/museums/shipwrecks + +--- +rtfd_name: batavia +--- +customlogo: yes +--- +showcase: no +--- +image: batavia.png +--- +github_repo: beeware/batavia diff --git a/content/project/projects/tools/beefore/beefore.png b/content/project/attic/beefore/beefore.png similarity index 100% rename from content/project/projects/tools/beefore/beefore.png rename to content/project/attic/beefore/beefore.png diff --git a/content/project/projects/tools/beefore/contents+es.lr b/content/project/attic/beefore/contents+es.lr similarity index 100% rename from content/project/projects/tools/beefore/contents+es.lr rename to content/project/attic/beefore/contents+es.lr diff --git a/content/project/attic/beefore/contents.lr b/content/project/attic/beefore/contents.lr new file mode 100644 index 0000000000..7dab239398 --- /dev/null +++ b/content/project/attic/beefore/contents.lr @@ -0,0 +1,45 @@ +name: Beefore +--- +description: + +Although code exists to be compiled or executed by a computer, it's also there to be read by humans. A computer doesn't care what code looks like, as long as it's valid syntax. However, there's a lot you can do in the formatting and styling of code to make that code even more readable by humans. + +These are mostly simple things, like consistency in indentation, spacing, and line length. Every language has it's own conventions; each project will have it's own specialisations of those conventions. BeeWare is no exception. + +Someone reviewing a patch still needs to check for correct logic, but these simple style-check tasks are easy to check programatically. Many text editors will (or have extensions that will) do this process for you - the task is called *linting*. Beefore is a tool that allows you to integrate these checks into your Github pre-merge procedure, in the same way that can integrate continuous integration and test suite compliance before merging. + +It isn't just limited to code style though. Any check that can be objectively measured can be performed as part of the pre-merge procedure. This could include: + +* Checking for a Developer Certificate of Origin, Contributor License Agreement, or some other contribution licensing procedure. +* Evaluating code complexity +* Evaluating code coverage + +and many others. + +Beefore piggybacks on your the continuous integration process you already use to run your test suite before merging commits (e.g., Travis-CI). The Beefore tests are executed as a custom test run. + +--- +help_required: + +* Improving existing linters +* Integrating new linters and style checks (e.g., Java) +--- +languages: py, js +--- +maturity: alpha +--- +platforms: independent +--- +project_type: tool +--- +pun: It checks for all the things you have to have right *before* you merge a patch. +--- +short_description: Performs pre-merge checks (such as code style) on a pull request. +--- +customlogo: yes +--- +image: beefore.png +--- +github_repo: beeware/beefore +--- +attic: yes diff --git a/content/project/projects/tools/beekeeper/beekeeper.png b/content/project/attic/beekeeper/beekeeper.png similarity index 100% rename from content/project/projects/tools/beekeeper/beekeeper.png rename to content/project/attic/beekeeper/beekeeper.png diff --git a/content/project/projects/tools/beekeeper/contents+de.lr b/content/project/attic/beekeeper/contents+de.lr similarity index 100% rename from content/project/projects/tools/beekeeper/contents+de.lr rename to content/project/attic/beekeeper/contents+de.lr diff --git a/content/project/projects/tools/beekeeper/contents+es.lr b/content/project/attic/beekeeper/contents+es.lr similarity index 100% rename from content/project/projects/tools/beekeeper/contents+es.lr rename to content/project/attic/beekeeper/contents+es.lr diff --git a/content/project/attic/beekeeper/contents.lr b/content/project/attic/beekeeper/contents.lr new file mode 100644 index 0000000000..76771d6401 --- /dev/null +++ b/content/project/attic/beekeeper/contents.lr @@ -0,0 +1,27 @@ +name: BeeKeeper +--- +project_type: tool +--- +maturity: beta +--- +languages: py +--- +platforms: independent +--- +short_description: Build and CI tool +--- +description: BeeKeeper is a tool for running Docker containers on demand, with GitHub status reporting. As a side effect, this makes it very effective as an automated code review tool, a CI system, an automated deployment system, and many other things. +--- +help_required: +--- +pun: Someone has to look after the health and wellbeing of all the bees... +--- +incomplete: no +--- +rtfd_name: pybee-beekeeper +--- +customlogo: yes +--- +image: beekeeper.png +--- +github_repo: beeware/beekeeper diff --git a/content/project/projects/attic/cassowary/cassowary.png b/content/project/attic/cassowary/cassowary.png similarity index 100% rename from content/project/projects/attic/cassowary/cassowary.png rename to content/project/attic/cassowary/cassowary.png diff --git a/content/project/projects/attic/cassowary/contents+es.lr b/content/project/attic/cassowary/contents+es.lr similarity index 100% rename from content/project/projects/attic/cassowary/contents+es.lr rename to content/project/attic/cassowary/contents+es.lr diff --git a/content/project/attic/cassowary/contents.lr b/content/project/attic/cassowary/contents.lr new file mode 100644 index 0000000000..c83f7cc6bc --- /dev/null +++ b/content/project/attic/cassowary/contents.lr @@ -0,0 +1,31 @@ +name: Cassowary +--- +project_type: library +--- +maturity: production +--- +languages: py +--- +platforms: independent +--- +short_description: A pure python implementation of the Cassowary constraint solving algorithm. +--- +description: + +A pure Python implementation of the `Cassowary constraint-solving algorithm`_. +Cassowary is the algorithm that forms the core of the OS X and iOS visual +layout mechanism. + +.. _Cassowary constraint-solving algorithm: http://constraints.cs.washington.edu/cassowary/ + +This project is no longer in use. It was originally developed for use in Toga; however, Toga now uses CSS-based layout, implemented in `Colosseum `__. +--- +help_required: +--- +rtfd_name: cassowary +--- +attic: yes +--- +github_repo: pybee/cassowary +--- +image: cassowary.png diff --git a/content/project/projects/attic/contents+es.lr b/content/project/attic/contents+es.lr similarity index 100% rename from content/project/projects/attic/contents+es.lr rename to content/project/attic/contents+es.lr diff --git a/content/project/attic/contents.lr b/content/project/attic/contents.lr new file mode 100644 index 0000000000..566acaec61 --- /dev/null +++ b/content/project/attic/contents.lr @@ -0,0 +1,13 @@ +_model: project-type +--- +title: Attic +--- +short_description: They can't all be zingers... +--- +description: + +The attic is a collection of older and experimental projects that were once part of the BeeWare suite, but are no longer being actively maintained. If you are interested in taking over maintenance of an attic project, please `get in touch`_. + +.. _get in touch: mailto:russell@beeware.org +--- +hide_from_project: yes diff --git a/content/project/projects/attic/cookiecutter-project/contents+es.lr b/content/project/attic/cookiecutter-project/contents+es.lr similarity index 100% rename from content/project/projects/attic/cookiecutter-project/contents+es.lr rename to content/project/attic/cookiecutter-project/contents+es.lr diff --git a/content/project/attic/cookiecutter-project/contents.lr b/content/project/attic/cookiecutter-project/contents.lr new file mode 100644 index 0000000000..750fd00288 --- /dev/null +++ b/content/project/attic/cookiecutter-project/contents.lr @@ -0,0 +1,17 @@ +name: cookiecutter-project +--- +languages: py +--- +maturity: production +--- +platforms: independent +--- +project_type: tool +--- +short_description: A cookiecutter template for projects +--- +description: This was a cookiecutter template for setting up new pybee projects. It is no longer used. +--- +attic: yes +--- +github_repo: pybee/cookiecutter-project diff --git a/content/project/projects/attic/cookiecutter-website/contents+es.lr b/content/project/attic/cookiecutter-website/contents+es.lr similarity index 100% rename from content/project/projects/attic/cookiecutter-website/contents+es.lr rename to content/project/attic/cookiecutter-website/contents+es.lr diff --git a/content/project/attic/cookiecutter-website/contents.lr b/content/project/attic/cookiecutter-website/contents.lr new file mode 100644 index 0000000000..7cab533115 --- /dev/null +++ b/content/project/attic/cookiecutter-website/contents.lr @@ -0,0 +1,15 @@ +name: cookiecutter-website +--- +description: This was a cookiecutter template for setting up new Pybee.org project websites. It is no longer used. +--- +languages: py +--- +maturity: production +--- +platforms: independent +--- +project_type: tool +--- +short_description: A cookiecutter template for websites +--- +attic: yes diff --git a/content/project/projects/libraries/ouroboros/contents+es.lr b/content/project/attic/ouroboros/contents+es.lr similarity index 100% rename from content/project/projects/libraries/ouroboros/contents+es.lr rename to content/project/attic/ouroboros/contents+es.lr diff --git a/content/project/attic/ouroboros/contents.lr b/content/project/attic/ouroboros/contents.lr new file mode 100644 index 0000000000..9a2b22bc5d --- /dev/null +++ b/content/project/attic/ouroboros/contents.lr @@ -0,0 +1,25 @@ +name: Ouroboros +--- +project_type: library +--- +maturity: experimental +--- +languages: py +--- +platforms: independent +--- +short_description: A standalone, pure Python implementation of the Python Standard Library. This allows Python default libraries to be used portably on any implementation of the Python virtual machine---not requiring CPython. +--- +description: A standalone, pure Python implementation of the Python Standard Library. +--- +help_required: + +Expansion of unit testing. +--- +pun: The ouroboros is an ancient symbol depicting a serpent eating its own tail. Ouroboros (this library) is also similarly self-referential; it implements Python in Python itself (the subset of Python on the Python virtual machine). +--- +image: ouroboros.png +--- +rtfd_name: pybee-ouroboros +--- +github_repo: beeware/ouroboros diff --git a/content/project/projects/libraries/ouroboros/ouroboros.png b/content/project/attic/ouroboros/ouroboros.png similarity index 100% rename from content/project/projects/libraries/ouroboros/ouroboros.png rename to content/project/attic/ouroboros/ouroboros.png diff --git a/content/project/projects/support/python-android-support/contents+es.lr b/content/project/attic/python-android-support/contents+es.lr similarity index 100% rename from content/project/projects/support/python-android-support/contents+es.lr rename to content/project/attic/python-android-support/contents+es.lr diff --git a/content/project/attic/python-android-support/contents.lr b/content/project/attic/python-android-support/contents.lr new file mode 100644 index 0000000000..0ef51eb546 --- /dev/null +++ b/content/project/attic/python-android-support/contents.lr @@ -0,0 +1,25 @@ +name: Python Android Support +--- +languages: py, java +--- +maturity: production +--- +platforms: android +--- +project_type: support +--- +description: + + +This is a meta-package for building a version of Python (and supporting libraries) +that can be embedded into an Android project. + +It works by downloading, patching and building libraries in Android-compatible +format. + +--- +short_description: A meta-package for building a version of Python that can be embedded into an Android project. +--- +image: python-android-support.png +--- +github_repo: beeware/Python-Android-support diff --git a/content/project/projects/support/python-android-support/python-android-support.png b/content/project/attic/python-android-support/python-android-support.png similarity index 100% rename from content/project/projects/support/python-android-support/python-android-support.png rename to content/project/attic/python-android-support/python-android-support.png diff --git a/content/project/projects/templates/python-android-template/contents+es.lr b/content/project/attic/python-android-template/contents+es.lr similarity index 100% rename from content/project/projects/templates/python-android-template/contents+es.lr rename to content/project/attic/python-android-template/contents+es.lr diff --git a/content/project/attic/python-android-template/contents.lr b/content/project/attic/python-android-template/contents.lr new file mode 100644 index 0000000000..ffe0000a02 --- /dev/null +++ b/content/project/attic/python-android-template/contents.lr @@ -0,0 +1,38 @@ +name: Python Android Template +--- +project_type: template +--- +maturity: alpha +--- +languages: java, py +--- +platforms: android +--- +short_description: A cookiecutter template for creating an Android project running Python code. +--- +description: + +A template for building Python apps that will run on Android devices, such as phones and tablets. It uses `cookiecutter`_ which creates projects from cookiecutters (project templates). +The easiest way to use this project is to not use it at all - at least, not directly. `Briefcase`_ is a tool that uses this template, rolling it out using data extracted from your setup.py + +The following Python versions are supported: + +* `Python 3.4`_ +* `Python 3.5`_ + +.. _cookiecutter: https://cookiecutter.readthedocs.io +.. _Briefcase: /project/projects/tools/briefcase +.. _Python 3.4: https://github.com/beeware/Python-Android-template/tree/3.4 +.. _Python 3.5: https://github.com/beeware/Python-Android-template/tree/3.5 + + +--- +help_required: +--- +incomplete: yes +--- +customlogo: yes +--- +image: python-android-template.png +--- +github_repo: beeware/python-android-template diff --git a/content/project/projects/templates/python-android-template/python-android-template.png b/content/project/attic/python-android-template/python-android-template.png similarity index 100% rename from content/project/projects/templates/python-android-template/python-android-template.png rename to content/project/attic/python-android-template/python-android-template.png diff --git a/content/project/projects/attic/python-ios-support/contents+es.lr b/content/project/attic/python-ios-support/contents+es.lr similarity index 100% rename from content/project/projects/attic/python-ios-support/contents+es.lr rename to content/project/attic/python-ios-support/contents+es.lr diff --git a/content/project/attic/python-ios-support/contents.lr b/content/project/attic/python-ios-support/contents.lr new file mode 100644 index 0000000000..8bcceba7d2 --- /dev/null +++ b/content/project/attic/python-ios-support/contents.lr @@ -0,0 +1,23 @@ +name: Python iOS Support +--- +project_type: support +--- +maturity: production +--- +languages: py, c +--- +platforms: iOS +--- +short_description: A meta-package for building a version of Python that can be embedded into an iOS project. +--- +description: + +A meta-package for building a version of Python that can be embedded into an iOS project. + +This project has been superceded by `Python Apple support `__ package. +--- +help_required: +--- +attic: yes +--- +github_repo: pybee/Python-iOS-support diff --git a/content/project/projects/templates/python-ios-template/contents+es.lr b/content/project/attic/python-ios-template/contents+es.lr similarity index 100% rename from content/project/projects/templates/python-ios-template/contents+es.lr rename to content/project/attic/python-ios-template/contents+es.lr diff --git a/content/project/attic/python-ios-template/contents.lr b/content/project/attic/python-ios-template/contents.lr new file mode 100644 index 0000000000..b61a8059c5 --- /dev/null +++ b/content/project/attic/python-ios-template/contents.lr @@ -0,0 +1,23 @@ +name: Python iOS Template +--- +project_type: template +--- +maturity: beta +--- +languages: py, m +--- +platforms: iOS +--- +short_description: A template for building Python apps that will run on iOS devices. +--- +description: A template for building Python apps that will run on iOS devices, such as iPhones and iPads. +--- +help_required: +--- +incomplete: yes +--- +customlogo: yes +--- +image: python-ios-template.png +--- +github_repo: beeware/python-ios-template diff --git a/content/project/projects/templates/python-ios-template/python-ios-template.png b/content/project/attic/python-ios-template/python-ios-template.png similarity index 100% rename from content/project/projects/templates/python-ios-template/python-ios-template.png rename to content/project/attic/python-ios-template/python-ios-template.png diff --git a/content/project/projects/support/python-apple-support/contents+es.lr b/content/project/attic/python-linux-support/contents+es.lr similarity index 100% rename from content/project/projects/support/python-apple-support/contents+es.lr rename to content/project/attic/python-linux-support/contents+es.lr diff --git a/content/project/attic/python-linux-support/contents.lr b/content/project/attic/python-linux-support/contents.lr new file mode 100644 index 0000000000..b95363a09c --- /dev/null +++ b/content/project/attic/python-linux-support/contents.lr @@ -0,0 +1,21 @@ +name: Python Linux Support +--- +languages: py, c +--- +maturity: beta +--- +platforms: linux +--- +project_type: support +--- +short_description: A meta-package for building a version of Python that can be embedded into a Linux project. +--- +incomplete: no +--- +description: A meta-package for building a version of Python that can be embedded into a Linux project. +--- +customlogo: yes +--- +image: python-linux-support.png +--- +github_repo: beeware/Python-Linux-support diff --git a/content/project/projects/support/python-linux-support/python-linux-support.png b/content/project/attic/python-linux-support/python-linux-support.png similarity index 100% rename from content/project/projects/support/python-linux-support/python-linux-support.png rename to content/project/attic/python-linux-support/python-linux-support.png diff --git a/content/project/projects/templates/python-macos-template/contents+es.lr b/content/project/attic/python-macos-template/contents+es.lr similarity index 100% rename from content/project/projects/templates/python-macos-template/contents+es.lr rename to content/project/attic/python-macos-template/contents+es.lr diff --git a/content/project/attic/python-macos-template/contents.lr b/content/project/attic/python-macos-template/contents.lr new file mode 100644 index 0000000000..0318de92fa --- /dev/null +++ b/content/project/attic/python-macos-template/contents.lr @@ -0,0 +1,19 @@ +name: Python macOS Template +--- +project_type: template +--- +maturity: beta +--- +languages: py, m +--- +platforms: macOS +--- +short_description: A template for building Python apps that will run on Apple macOS devices. +--- +description: A template for building Python apps that will run on Apple macOS devices, such as MacBooks and iMacs. +--- +help_required: +--- +incomplete: yes +--- +github_repo: beeware/python-macos-template diff --git a/content/project/projects/attic/python-osx-support/contents+es.lr b/content/project/attic/python-osx-support/contents+es.lr similarity index 100% rename from content/project/projects/attic/python-osx-support/contents+es.lr rename to content/project/attic/python-osx-support/contents+es.lr diff --git a/content/project/attic/python-osx-support/contents.lr b/content/project/attic/python-osx-support/contents.lr new file mode 100644 index 0000000000..0f42739806 --- /dev/null +++ b/content/project/attic/python-osx-support/contents.lr @@ -0,0 +1,23 @@ +name: Python OSX Support +--- +project_type: support +--- +maturity: production +--- +languages: py, c +--- +platforms: macOS +--- +short_description: A meta-package for building a version of Python that can be embedded into an OS X project. +--- +description: + +A meta-package for building a version of Python that can be embedded into a macOS (neé OS X) project. + +This project has been superceded by `Python Apple support `__ package. +--- +help_required: +--- +attic: yes +--- +github_repo: pybee/Python-OSX-support diff --git a/content/project/projects/attic/python-tvos-support/contents+es.lr b/content/project/attic/python-tvos-support/contents+es.lr similarity index 100% rename from content/project/projects/attic/python-tvos-support/contents+es.lr rename to content/project/attic/python-tvos-support/contents+es.lr diff --git a/content/project/attic/python-tvos-support/contents.lr b/content/project/attic/python-tvos-support/contents.lr new file mode 100644 index 0000000000..c832528ab6 --- /dev/null +++ b/content/project/attic/python-tvos-support/contents.lr @@ -0,0 +1,21 @@ +name: Python tvOS Support +--- +project_type: support +--- +maturity: alpha +--- +languages: py, c +--- +platforms: tvOS +--- +short_description: A meta-package for building a version of Python that can be embedded into a tvOS project. +--- +description: + +A meta-package for building a version of Python that can be embedded into a tvOS project. + +This project has been superceded by `Python Apple support `__ package. +--- +help_required: +--- +attic: yes diff --git a/content/project/projects/templates/python-tvos-template/contents+es.lr b/content/project/attic/python-tvos-template/contents+es.lr similarity index 100% rename from content/project/projects/templates/python-tvos-template/contents+es.lr rename to content/project/attic/python-tvos-template/contents+es.lr diff --git a/content/project/attic/python-tvos-template/contents.lr b/content/project/attic/python-tvos-template/contents.lr new file mode 100644 index 0000000000..ba6bae0a75 --- /dev/null +++ b/content/project/attic/python-tvos-template/contents.lr @@ -0,0 +1,19 @@ +name: Python tvOS Template +--- +project_type: template +--- +maturity: alpha +--- +languages: py, c +--- +platforms: tvOS +--- +short_description: A template for building Python apps that will run on Apple tvOS devices. +--- +description: A template for building Python apps that will run on Apple tvOS devices, such as the AppleTV. +--- +help_required: +--- +incomplete: yes +--- +github_repo: beeware/python-tvos-template diff --git a/content/project/projects/attic/sealang/contents+es.lr b/content/project/attic/sealang/contents+es.lr similarity index 100% rename from content/project/projects/attic/sealang/contents+es.lr rename to content/project/attic/sealang/contents+es.lr diff --git a/content/project/attic/sealang/contents.lr b/content/project/attic/sealang/contents.lr new file mode 100644 index 0000000000..1f2d6c7422 --- /dev/null +++ b/content/project/attic/sealang/contents.lr @@ -0,0 +1,63 @@ +name: Sealang +--- +project_type: library +--- +maturity: alpha +--- +languages: py +--- +platforms: macOS, linux +--- +short_description: An extended set of Python bindings for libclang +--- +description: + +Sealang is an improved set of Python bindings for ``libclang``. + +The upstream maintainers of ``libclang`` have not been especially responsive +to patches that address issues like Python 3 compatibility, and the +significant omissions in the API (such as extracting literals and operators). + +This package is a fork of the official Python bindings for ``libclang``, patched to correct these problems. + +How it works +------------- + +Sealang is a bit of a nasty hack. ``libclang`` is a set of C bindings to a C++ +API; Python ``ctypes`` are then used to wrap the C API. However, while the C++ +API is quite rich, ``libclang`` is less so. + +Sealang bridges this gap by providing C wrappers around the C++ calls that +provide the useful functionality. This library of C functions is wrapped up as +a Python C module for delivery purposes - this C module contains no exposed +*Python* objects or methods, but because it's a module, the underlying +compiled `sealang.so` file is easy to find. `ctypes` are then used to expose +the `sealang` wrapper functions; + +Internally, Sealang reproduces some minor pieces of the ``libclang`` API; +these are methods (such as the string creation and manipulation methods) that +aren't exposed as symbols for third-party use. + +All this functionality is potentially a candidate to be passed upstream to +libclang. + +Relationship to Clang +~~~~~~~~~~~~~~~~~~~~~ + +This project aims to mirror what is currently available in the Python bindings +to ``libclang``. The version number for this project is drawn from the version +and SVN revision of the official clang repository. + +Any changes made upstream to ``libclang`` will be mirrored here; any changes +made here will, where possible, be pushed upstream to ``libclang``. + +Development status +~~~~~~~~~~~~~~~~~~ + +This project was an experiment developed to support `Seasnake `__. Since Seasnake has been abandoned, so has this project. +--- +help_required: +--- +attic: yes +--- +image: sealang.png diff --git a/content/project/projects/attic/sealang/sealang.png b/content/project/attic/sealang/sealang.png similarity index 100% rename from content/project/projects/attic/sealang/sealang.png rename to content/project/attic/sealang/sealang.png diff --git a/content/project/projects/attic/seasnake/contents+es.lr b/content/project/attic/seasnake/contents+es.lr similarity index 100% rename from content/project/projects/attic/seasnake/contents+es.lr rename to content/project/attic/seasnake/contents+es.lr diff --git a/content/project/attic/seasnake/contents.lr b/content/project/attic/seasnake/contents.lr new file mode 100644 index 0000000000..a9b9816c3c --- /dev/null +++ b/content/project/attic/seasnake/contents.lr @@ -0,0 +1,37 @@ +name: Seasnake +--- +project_type: bridge +--- +maturity: alpha +--- +languages: py, cpp +--- +platforms: independent +--- +short_description: A tool to manage conversion of C++ code to Python. +--- +description: + +Sometimes you will find a great algorithm, but find that the only +implementation of that algorithm is written in C or C++. In some cases +it might be possible to wrap that C/C++ code in a Python C module. +However, if a C module is not an option, you need to be able to convert +the C/C++ implementation into a Pure Python implementation. + +SeaSnake was written to automate the conversion of WebKit_ sources +into a version that could be used by Colosseum_. + +This project was an experiment; it has been abandoned. + +.. _WebKit: https://webkit.org +.. _Colosseum: https://github.com/beeware/colosseum +--- +help_required: +--- +pun: + +Seasnake converts C (sea) to Python (snake). +--- +attic: yes +--- +image: seasnake.png diff --git a/content/project/projects/attic/seasnake/seasnake.png b/content/project/attic/seasnake/seasnake.png similarity index 100% rename from content/project/projects/attic/seasnake/seasnake.png rename to content/project/attic/seasnake/seasnake.png diff --git a/content/project/projects/attic/trebuchet/contents+es.lr b/content/project/attic/trebuchet/contents+es.lr similarity index 100% rename from content/project/projects/attic/trebuchet/contents+es.lr rename to content/project/attic/trebuchet/contents+es.lr diff --git a/content/project/attic/trebuchet/contents.lr b/content/project/attic/trebuchet/contents.lr new file mode 100644 index 0000000000..709fd809e0 --- /dev/null +++ b/content/project/attic/trebuchet/contents.lr @@ -0,0 +1,13 @@ +name: Trebuchet +--- +description: Trebuchet was earmarked as a tool to help deploy websites. It was never developed. +--- +maturity: experimental +--- +project_type: tool +--- +short_description: A tool to deploy websites +--- +attic: yes +--- +image: trebuchet.png diff --git a/content/project/projects/attic/trebuchet/trebuchet.png b/content/project/attic/trebuchet/trebuchet.png similarity index 100% rename from content/project/projects/attic/trebuchet/trebuchet.png rename to content/project/attic/trebuchet/trebuchet.png diff --git a/content/project/projects/attic/voc/contents+ar.lr b/content/project/attic/voc/contents+ar.lr similarity index 100% rename from content/project/projects/attic/voc/contents+ar.lr rename to content/project/attic/voc/contents+ar.lr diff --git a/content/project/projects/attic/voc/contents+es.lr b/content/project/attic/voc/contents+es.lr similarity index 100% rename from content/project/projects/attic/voc/contents+es.lr rename to content/project/attic/voc/contents+es.lr diff --git a/content/project/attic/voc/contents.lr b/content/project/attic/voc/contents.lr new file mode 100644 index 0000000000..7915a01466 --- /dev/null +++ b/content/project/attic/voc/contents.lr @@ -0,0 +1,82 @@ +name: VOC +--- +project_type: bridge +--- +maturity: alpha +--- +languages: java, py +--- +platforms: independent +--- +short_description: A transpiler that converts Python bytecode into Java bytecode. +--- +attic: yes +--- +description: + +VOC serves two major functions: + +* Compiles Python 3.4+ source files into Java class files, enabling you to run + Python code on a JVM (including Android's VM). +* Provides an API to let you programmatically create Java class files. + +It isn't a *fully* compliant Python 3.4 implementation just yet - there are some +language features (like ``nonlocal`` and some builtin functions) that still need to be +implemented, and there is only a bare bones standard library implementation. +However, it is possible to convert simple Python programs, and even write +`simple Android applications`_. + +To take VOC for a spin, run through the `Getting Started`_ guide, then start with the `first tutorial`_. + +If you'd like to contribute to VOC development, we have a `guide for first time contributors`_. + + +.. _Getting Started: https://voc.readthedocs.io/en/latest/index.html +.. _first tutorial: https://voc.readthedocs.io/en/latest/tutorial/tutorial-0.html +.. _simple Android applications: https://github.com/eliasdorneles/tictactoe-voc +.. _guide for first time contributors: https://voc.readthedocs.io/en/latest/how-to/contribute-code.html +--- +help_required: + +VOC has been archived. + +--- +pun: + +VOC is a backronym for "Vestigial Output Compiler". Or "Vexing Obtuse +Compiler". Or "Valuable Obscure Compiler". Or "Varigated Ocelot Calibrator". +It's your choice. + +Historically, VOC was the `Vereenigde Oostindische Compagnie (VOC)`_, or Dutch +East India Company, often considered the be the world's first multinational +corporation. It was also the first company to issue shares, and facilitate the +trading of those shares. It was granted a 21 year monopoly to carry out trade +activities in Asia, primarily the Spice Islands - the Dutch East Indies. They +established a major trading port at Batavia - now Jakarta - on the island of +Java (now part of Indonesia). + +While VOC was a very profitable business for it's shareholders, it operated as +a colonial power. Modern historians have `expressed criticism of their business +practices`_, which included exploitation of indigenous populations (including +use of slave labour), slave trade, use of violence, and environmental +destruction (including deforestation). + +VOC also played a role in the European discovery of Australia, and there are +many VOC shipwrecks on the coast of Western Australia. + +The name VOC was chosen by the project because the project founder is from +Western Australia, and VOC has a strong non-colonial presence in that state's +history. It was also a convenient pun, as VOC was an enterprise Java company. + +It should not be considered an endorsement or glorification of the +exploitative business practices of the company. + +.. _Vereenigde Oostindische Compagnie (VOC): https://en.wikipedia.org/wiki/Dutch_East_India_Company +.. _expressed criticism of their business practices: https://en.wikipedia.org/wiki/Dutch_East_India_Company#Criticism + +--- +rtfd_name: voc +--- +showcase: no +--- +github_repo: beeware/voc diff --git a/content/project/projects/attic/voc/voc.png b/content/project/attic/voc/voc.png similarity index 100% rename from content/project/projects/attic/voc/voc.png rename to content/project/attic/voc/voc.png diff --git a/content/project/projects/attic/waggle/contents+es.lr b/content/project/attic/waggle/contents+es.lr similarity index 100% rename from content/project/projects/attic/waggle/contents+es.lr rename to content/project/attic/waggle/contents+es.lr diff --git a/content/project/attic/waggle/contents.lr b/content/project/attic/waggle/contents.lr new file mode 100644 index 0000000000..37b871219d --- /dev/null +++ b/content/project/attic/waggle/contents.lr @@ -0,0 +1,27 @@ +name: Waggle +--- +project_type: tool +--- +maturity: beta +--- +languages: py +--- +platforms: independent +--- +short_description: Prepares and uploads Docker images for use by BeeKeeper. +--- +description: Prepare and upload Docker images for use by BeeKeeper. +--- +help_required: +--- +pun: When a worker bee discovers a good source of nectar, it returns to the hive and performs a `waggle dance `__ - a series of moves with a specific meaning that tells other bees where they can find the nectar source. +--- +incomplete: no +--- +rtfd_name: +--- +customlogo: yes +--- +image: waggle.png +--- +github_repo: pybee/waggle diff --git a/content/project/projects/attic/waggle/waggle.png b/content/project/attic/waggle/waggle.png similarity index 100% rename from content/project/projects/attic/waggle/waggle.png rename to content/project/attic/waggle/waggle.png diff --git a/content/project/projects/tools/briefcase/briefcase.png b/content/project/briefcase/briefcase.png similarity index 100% rename from content/project/projects/tools/briefcase/briefcase.png rename to content/project/briefcase/briefcase.png diff --git a/content/project/projects/tools/briefcase/contents+ar.lr b/content/project/briefcase/contents+ar.lr similarity index 100% rename from content/project/projects/tools/briefcase/contents+ar.lr rename to content/project/briefcase/contents+ar.lr diff --git a/content/project/projects/tools/briefcase/contents+de.lr b/content/project/briefcase/contents+de.lr similarity index 100% rename from content/project/projects/tools/briefcase/contents+de.lr rename to content/project/briefcase/contents+de.lr diff --git a/content/project/projects/tools/briefcase/contents+fr.lr b/content/project/briefcase/contents+fr.lr similarity index 100% rename from content/project/projects/tools/briefcase/contents+fr.lr rename to content/project/briefcase/contents+fr.lr diff --git a/content/project/briefcase/contents.lr b/content/project/briefcase/contents.lr new file mode 100644 index 0000000000..3b01101e42 --- /dev/null +++ b/content/project/briefcase/contents.lr @@ -0,0 +1,55 @@ +name: Briefcase +--- +project_type: tool +--- +maturity: beta +--- +languages: py +--- +platforms: macOS, iOS, android, tvOS, win +--- +short_description: Convert a Python project into a standalone native application. +--- +description: + +Briefcase is a tool for converting a Python project into a standalone native +application. You can package projects for: + +* Mac +* Windows +* Linux +* iPhone/iPad +* Android + +Support for AppleTV, watchOS, wearOS and web deployments is planned. + +If you want to see Briefcase in action, try the `BeeWare tutorial +`__. That tutorial walks you through the +process of creating and packaging a new application with Briefcase. + +--- +help_required: + +Briefcase is part of the BeeWare suite. + +If you experience problems with Briefcase, log them on `GitHub`_ . If you want +to contribute code, please `fork`_ the code and submit a `pull request`_. + +.. _GitHub: https://github.com/beeware/briefcase/issues +.. _fork: https://github.com/beeware/briefcase +.. _pull request: https://github.com/beeware/briefcase/pulls + + +incomplete: yes +--- +rtfd_name: briefcase +--- +customlogo: yes +--- +showcase: yes +--- +image: briefcase.png +--- +github_repo: beeware/briefcase +--- +_slug: diff --git a/content/project/contents.lr b/content/project/contents.lr index 12bb6e2f05..64c36eb1cd 100644 --- a/content/project/contents.lr +++ b/content/project/contents.lr @@ -1,19 +1,30 @@ -_model: page +_model: beeware --- _template: beeware.html --- -title: BeeWare Project +title: Projects --- summary: What is the BeeWare project? --- -sort_key: 3 ---- gutter: -Meet Brutus -=========== -.. image:: /static/images/brutus-128.png +BeeWare isn't a single tool or library - it's a collection of projects that can be used to help develop, debug, and launch Python software. Each tool follows the Unix philosophy of doing one thing well. Each tool can be used in isolation, or they can be chained together to provide a rich set of programming tools. -Brutus the Bee is the mascot of the BeeWare project. He's a busy little worker bee. +They can't all be zingers, though - there is also an `attic where we keep projects we're no longer maintaining `__. +--- +body: -Fun fact: a person who keeps bees is called an **apiarist** - a name that the BeeWare project uses to describe the core team. This also reflects the relationship that the core team wishes to have with the community - we're shepherds of the community, and we'll provide direction, but we know the real work is done by the community as a whole. +Featured projects +=================== +--- +last: +--- +applications_description: These are applications. +--- +applications_title: Applications +--- +utilities_description: These are utilities. +--- +utilities_title: Utilities +--- +short_description: What makes up the BeeWare project? diff --git a/content/project/overview/contents.lr b/content/project/overview/contents.lr index 3649925f48..76363ee8c5 100644 --- a/content/project/overview/contents.lr +++ b/content/project/overview/contents.lr @@ -1,46 +1,5 @@ -_model: page +_model: redirect --- -title: What is BeeWare? +new_path: /about/overview/ --- -body: - - -Python has proven itself as a highly capable language - approachable for newcomers, but powerful in the hands of experts. The BeeWare Project aims to take the power of Python as a language, and use it to enable users of all skill levels to develop applications with native user interfaces. - -The end goal of the BeeWare project: To be able to do for mobile and desktop user-facing software the same thing that Django has done for web software - to put into the hands of users a set of tools and libraries that enables them to develop rich, native user interfaces, and deploy them to their devices. This includes: - -* Tools to enable Python to run on different devices, -* Tools to package a Python project so it can run on those devices, -* Libraries to access the native widgets and capabilities of devices, -* Tools to help develop, debug, analyze and deploy these projects. - -The aim is that this set of tools will be easy enough to use for complete newcomers to use in a Django Girls-like setting; but powerful enough that they could be used to drive the next Instagram, Pinterest or Disqus. - -We're not just about software, though. We also aim to be a project with a social conscience. We aim to develop and maintain a diverse and inclusive community, and we have a Code of Conduct that is rigorously enforced. We also aspire to develop a healthy and sustainable community - one that is aware of mental health issues of its participants, and provides the resources for people to start engaging, and continue to engage with the community. - -Where to from here? -=================== - -If you'd like to know more about the history of BeeWare, `start here `__. - -If you'd like to take BeeWare for a test drive, `take a look at the the various ways BeeWare tools can be used `__. - -If you'd like to keep up to date with what we're doing, follow `@beeware@fosstodon.org `__ on Mastodon. If you'd like to receive updates, hints, tips and announcements about the BeeWare project, `sign up for the Beeware Enthusiasts mailing list `__. - ---- -gutter: - -Next steps -========== - -* The `History of the BeeWare project `__ -* `BeeWare test drive `__ -* `@beeware@fosstodon.org on Mastodon `__ -* The `Beeware Enthusiasts mailing list `__ - ---- -incomplete: no ---- -sort_key: 1 ---- -summary: A first-timer's introduction to the BeeWare project +_discoverable: no diff --git a/content/project/projects/applications/contents+de.lr b/content/project/projects/applications/contents+de.lr deleted file mode 100644 index f4607fe83d..0000000000 --- a/content/project/projects/applications/contents+de.lr +++ /dev/null @@ -1,11 +0,0 @@ -_model: project-type ---- -title: Applikationen ---- -short_description: Eigenständige Endbenutzer- -anwendungen ---- -sort_key: 1 ---- -description: Applikationen sind eigenständige Endbenutzer- -anwendungen. Obwohl Anwendungen in Python geschrieben sind, handelt es sich hierbei um ein Implementierungsdetail - davon sollte der End- benutzer nichts merken. Anwendungen werden auf dieselbe Weise installiert und ausgeführt wie jede andere Endbenutzeranwendung auf deinem Computer. \ No newline at end of file diff --git a/content/project/projects/applications/contents+es.lr b/content/project/projects/applications/contents+es.lr deleted file mode 100644 index be22b5252b..0000000000 --- a/content/project/projects/applications/contents+es.lr +++ /dev/null @@ -1,11 +0,0 @@ -_model: project-type ---- -title: Aplicaciones ---- -short_description: Herramientas para el usuario final ---- -sort_key: 1 ---- -description: Las aplicaciones son herramientas para usuario final. Aunque las aplicaciones se escriben en Python, se trata de un detalle de implementación - del cual el usuario no debería ser consciente. Las aplicaciones se instalan y se ejecutan de la misma manera que cualquier otra aplicación de usuario final en su computadora. ---- -_slug: aplicaciones diff --git a/content/project/projects/applications/contents+fr.lr b/content/project/projects/applications/contents+fr.lr deleted file mode 100644 index e91c8daea2..0000000000 --- a/content/project/projects/applications/contents+fr.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Applications ---- -short_description: Outils autonomes pour les utilisateurs finaux ---- -sort_key: 1 ---- -description: Les applications sont des outils autonomes pour les utilisateurs finaux. Même si les applications sont écrites en Python, c'est un détail d'implémentation — vous ne devriez jamais vous rendre compte de cela. Les applications s'installent et fonctionnent de la manière que n'importe quelle autre application pour utilisateur final sur votre ordinateur. diff --git a/content/project/projects/applications/contents+pt.lr b/content/project/projects/applications/contents+pt.lr deleted file mode 100644 index 2e5a5d8bf4..0000000000 --- a/content/project/projects/applications/contents+pt.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Aplicativos ---- -short_description: Ferramentas independentes para uso final do usuário ---- -sort_key: 1 ---- -description: Os Aplicativos do BeeWare são ferramentas para o uso final do usuário. Apesar delas serem escritas em Python, isso é apenas um detalhe de implementação que você não deveria se preocupar. Aplicativos são instalados e executados da mesma forma como qualquer outro programa em seu computador. diff --git a/content/project/projects/applications/contents+tr.lr b/content/project/projects/applications/contents+tr.lr deleted file mode 100644 index d80f02df84..0000000000 --- a/content/project/projects/applications/contents+tr.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Uygulamalar ---- -short_description: Bağımsız son-kullanıcı araçları ---- -sort_key: 1 ---- -description: Uygulamalar, bağımsız son-kullanıcı uygulamasıdır. Uygulamalar Python'da yazılmış olsa da, bu projenin uygulanma detayıdır - bu durumu hiç kafanıza takmayın.Uygulamalar diğer son-kullanıcı uygulamaları ile aynı yolla kurulur ve çalıştırılır. diff --git a/content/project/projects/applications/contents+zh_TW.lr b/content/project/projects/applications/contents+zh_TW.lr deleted file mode 100644 index fb9715eb95..0000000000 --- a/content/project/projects/applications/contents+zh_TW.lr +++ /dev/null @@ -1,5 +0,0 @@ -description: 應用程式是獨立的應用程式。儘管應用程式是用 Python 編寫的,但這只是一個實作細節 - 您不應該意識到這件事。應用程式的安裝和運作方式與電腦上任何其他應用程式的安裝和運作方式相同。 ---- -short_description: 獨立的終端使用者工具 ---- -title: 應用程式 diff --git a/content/project/projects/applications/contents.lr b/content/project/projects/applications/contents.lr deleted file mode 100644 index 3f7731ccc1..0000000000 --- a/content/project/projects/applications/contents.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Applications ---- -short_description: Standalone end-user-tools ---- -sort_key: 1 ---- -description: Applications are standalone end-user application. Although applications are written in Python, this is an implementation detail - you shouldn't ever be aware of this fact. Applications are installed and run the same way as any other end-user application on your computer. \ No newline at end of file diff --git a/content/project/projects/applications/podium/contents.lr b/content/project/projects/applications/podium/contents.lr index 099afc717d..a0a2e5944a 100644 --- a/content/project/projects/applications/podium/contents.lr +++ b/content/project/projects/applications/podium/contents.lr @@ -1,44 +1,5 @@ -name: Podium +_model: redirect --- -project_type: app +new_path: /project/applications/podium/ --- -maturity: beta ---- -languages: py ---- -platforms: independent ---- -short_description: A markup-based slide presentation tool ---- -description: - -Developers go to conferences. And when they do, they need slide decks. - -Unfortunately, while presentation tools like `Keynote `__ and `PowerPoint `__ are great for business presentations, they aren't well suited to the needs of developers. The mainstay of developer presentations -- code samples -- are generally painful to add to a Keynote presentation. - -These presentation tools also come from a WYSIWYG (What You See Is What You Get) tradition. This can be powerful, because it makes it easy to put anything you want onto a slide. But it can also be painful, because you end up spending all your time pushing pixels into the right place, instead of focussing on the content of your talk. And if you want to make a style change, you may need to apply that change manually to every slide. The lessons of separating content from markup can't be applied to a WYSIWYG world. - -On top of all that, the document formats for Keynote and Powerpoint are binary blobs -- they don't lend themselves to version control, collaborative editing, and so on. - -The developer response to this has been to use HTML5. Recent years have seen the development of a number of HTML-based presentation tools, like prezi, `deck.js `__, `keydown `__, and `showoff `__. These tools exploit the power of HTML5 to make full screen presentations. - -However, by using browser technology as the basis for these tools, they miss one very important feature of WYSIWYG presentation tools: presenter mode. - -One of the big features of Keynote and Powerpoint is that they aren't just decks of slides -- they have presenter notes and timing tools, and the display shown to the audience isn't the same as the display shown to the presenter. - -Many of these tools also assume that you have a good WiFi connection, and will be able to display your content live off the internet... which if you've ever been to a developer conference, you'll know is a risky proposition. - -Podium attempts to bridge the gap between these two poles. It is comprised of: - -- A simple, text-based markup format, focussed on the needs of developer presentations. -- A graphical presentation tool that has a presenter display independent of the slide display. ---- -help_required: ---- -pun: ---- -customlogo: yes ---- -image: podium.png ---- -github_repo: beeware/podium +_discoverable: no diff --git a/content/project/projects/attic/batavia/contents.lr b/content/project/projects/attic/batavia/contents.lr index d0c767bf2d..8ef8c1ad80 100644 --- a/content/project/projects/attic/batavia/contents.lr +++ b/content/project/projects/attic/batavia/contents.lr @@ -1,66 +1,5 @@ -name: Batavia +_model: redirect --- -project_type: bridge +new_path: /project/attic/batavia/ --- -maturity: alpha ---- -languages: py, js ---- -platforms: browser ---- -short_description: A Javascript implementation of the Python virtual machine ---- -attic: yes ---- -description: - -Batavia is an implementation of the Python virtual machine, written in Javascript. With Batavia, you can run Python bytecode in your browser. - -It honours Python 3.4.4+ syntax and conventions, and lets you reference objects and classes defined natively in JavaScript. - ---- -help_required: - -So you want to contribute to an Open Source project? Batavia is a great place to start. -`Here are instructions on contributing to Batavia. `__ ---- -pun: - - - -On 27 October, 1628, *Commandeur* Francisco Pelsaert took command of the -*Batavia*, and with 340 passengers and crew, set sail from Texel. - -Their destination? The Spice Islands - or more specifically, island of Java -in the Dutch East Indies (now part of Indonesia). - -**The Batavia was... a Java ship (da-dum 🥁!).** - -Interestingly, during the voyage, Ariaen Jacobsz and *onderkoopman* Jeronimus -Cornelisz incited a mutiny, because they didn't want to go to Java - they -wanted to escape to start a new life somewhere else. As a result of the -mutiny, on 4 June 1629, the Batavia ran aground on Morning Reef, part of the -Houtman Abrolhos, about 450km North of Perth, Western Australia, where this -project was conceived. - -The `full story of the Batavia`_ is known to most Western Australian -schoolchildren, and is a harrowing tale of intrigue, savagery, and murder. *It -serves as a reminder of what can happen when you force people to go to Java* -:-) - -The wreck of the Batavia was recovered in the 1970s, and now stands in the -`shipwrecks gallery of the Western Australian Maritime Museum`_. - -.. _full story of the Batavia: https://en.wikipedia.org/wiki/Batavia_(ship) -.. _shipwrecks gallery of the Western Australian Maritime Museum: http://museum.wa.gov.au/museums/shipwrecks - ---- -rtfd_name: batavia ---- -customlogo: yes ---- -showcase: no ---- -image: batavia.png ---- -github_repo: beeware/batavia +_discoverable: no diff --git a/content/project/projects/attic/cassowary/contents.lr b/content/project/projects/attic/cassowary/contents.lr index c83f7cc6bc..7e92f6fa88 100644 --- a/content/project/projects/attic/cassowary/contents.lr +++ b/content/project/projects/attic/cassowary/contents.lr @@ -1,31 +1,5 @@ -name: Cassowary +_model: redirect --- -project_type: library +new_path: /project/attic/cassowary/ --- -maturity: production ---- -languages: py ---- -platforms: independent ---- -short_description: A pure python implementation of the Cassowary constraint solving algorithm. ---- -description: - -A pure Python implementation of the `Cassowary constraint-solving algorithm`_. -Cassowary is the algorithm that forms the core of the OS X and iOS visual -layout mechanism. - -.. _Cassowary constraint-solving algorithm: http://constraints.cs.washington.edu/cassowary/ - -This project is no longer in use. It was originally developed for use in Toga; however, Toga now uses CSS-based layout, implemented in `Colosseum `__. ---- -help_required: ---- -rtfd_name: cassowary ---- -attic: yes ---- -github_repo: pybee/cassowary ---- -image: cassowary.png +_discoverable: no diff --git a/content/project/projects/attic/contents.lr b/content/project/projects/attic/contents.lr index 3388ab763a..3ab161ad9a 100644 --- a/content/project/projects/attic/contents.lr +++ b/content/project/projects/attic/contents.lr @@ -1,13 +1,5 @@ -_model: project-type +_model: redirect --- -title: Attic +new_path: /project/attic/ --- -short_description: They can't all be zingers... ---- -sort_key: 7 ---- -description: - -The attic is a collection of older and experimental projects that were once part of the BeeWare suite, but are no longer being actively maintained. If you are interested in taking over maintenance of an attic project, please `get in touch`_. - -.. _get in touch: mailto:russell@beeware.org +_discoverable: no diff --git a/content/project/projects/attic/cookiecutter-project/contents.lr b/content/project/projects/attic/cookiecutter-project/contents.lr index 750fd00288..9b87eb6ce9 100644 --- a/content/project/projects/attic/cookiecutter-project/contents.lr +++ b/content/project/projects/attic/cookiecutter-project/contents.lr @@ -1,17 +1,5 @@ -name: cookiecutter-project +_model: redirect --- -languages: py +new_path: /project/attic/cookiecutter-project/ --- -maturity: production ---- -platforms: independent ---- -project_type: tool ---- -short_description: A cookiecutter template for projects ---- -description: This was a cookiecutter template for setting up new pybee projects. It is no longer used. ---- -attic: yes ---- -github_repo: pybee/cookiecutter-project +_discoverable: no diff --git a/content/project/projects/attic/cookiecutter-website/contents.lr b/content/project/projects/attic/cookiecutter-website/contents.lr index 7cab533115..a8d64232fd 100644 --- a/content/project/projects/attic/cookiecutter-website/contents.lr +++ b/content/project/projects/attic/cookiecutter-website/contents.lr @@ -1,15 +1,5 @@ -name: cookiecutter-website +_model: redirect --- -description: This was a cookiecutter template for setting up new Pybee.org project websites. It is no longer used. +new_path: /project/attic/cookiecutter-website/ --- -languages: py ---- -maturity: production ---- -platforms: independent ---- -project_type: tool ---- -short_description: A cookiecutter template for websites ---- -attic: yes +_discoverable: no diff --git a/content/project/projects/attic/python-ios-support/contents.lr b/content/project/projects/attic/python-ios-support/contents.lr index 8bcceba7d2..4d50ebf2e7 100644 --- a/content/project/projects/attic/python-ios-support/contents.lr +++ b/content/project/projects/attic/python-ios-support/contents.lr @@ -1,23 +1,5 @@ -name: Python iOS Support +_model: redirect --- -project_type: support +new_path: /project/attic/python-ios-support/ --- -maturity: production ---- -languages: py, c ---- -platforms: iOS ---- -short_description: A meta-package for building a version of Python that can be embedded into an iOS project. ---- -description: - -A meta-package for building a version of Python that can be embedded into an iOS project. - -This project has been superceded by `Python Apple support `__ package. ---- -help_required: ---- -attic: yes ---- -github_repo: pybee/Python-iOS-support +_discoverable: no diff --git a/content/project/projects/attic/python-osx-support/contents.lr b/content/project/projects/attic/python-osx-support/contents.lr index 0f42739806..ea23a9ac7a 100644 --- a/content/project/projects/attic/python-osx-support/contents.lr +++ b/content/project/projects/attic/python-osx-support/contents.lr @@ -1,23 +1,5 @@ -name: Python OSX Support +_model: redirect --- -project_type: support +new_path: /project/attic/python-osx-support/ --- -maturity: production ---- -languages: py, c ---- -platforms: macOS ---- -short_description: A meta-package for building a version of Python that can be embedded into an OS X project. ---- -description: - -A meta-package for building a version of Python that can be embedded into a macOS (neé OS X) project. - -This project has been superceded by `Python Apple support `__ package. ---- -help_required: ---- -attic: yes ---- -github_repo: pybee/Python-OSX-support +_discoverable: no diff --git a/content/project/projects/attic/python-tvos-support/contents.lr b/content/project/projects/attic/python-tvos-support/contents.lr index c832528ab6..6b007bbce6 100644 --- a/content/project/projects/attic/python-tvos-support/contents.lr +++ b/content/project/projects/attic/python-tvos-support/contents.lr @@ -1,21 +1,5 @@ -name: Python tvOS Support +_model: redirect --- -project_type: support +new_path: /project/attic/python-tvos-support/ --- -maturity: alpha ---- -languages: py, c ---- -platforms: tvOS ---- -short_description: A meta-package for building a version of Python that can be embedded into a tvOS project. ---- -description: - -A meta-package for building a version of Python that can be embedded into a tvOS project. - -This project has been superceded by `Python Apple support `__ package. ---- -help_required: ---- -attic: yes +_discoverable: no diff --git a/content/project/projects/attic/sealang/contents.lr b/content/project/projects/attic/sealang/contents.lr index 1f2d6c7422..da28c4ae14 100644 --- a/content/project/projects/attic/sealang/contents.lr +++ b/content/project/projects/attic/sealang/contents.lr @@ -1,63 +1,5 @@ -name: Sealang +_model: redirect --- -project_type: library +new_path: /project/attic/sealang/ --- -maturity: alpha ---- -languages: py ---- -platforms: macOS, linux ---- -short_description: An extended set of Python bindings for libclang ---- -description: - -Sealang is an improved set of Python bindings for ``libclang``. - -The upstream maintainers of ``libclang`` have not been especially responsive -to patches that address issues like Python 3 compatibility, and the -significant omissions in the API (such as extracting literals and operators). - -This package is a fork of the official Python bindings for ``libclang``, patched to correct these problems. - -How it works -------------- - -Sealang is a bit of a nasty hack. ``libclang`` is a set of C bindings to a C++ -API; Python ``ctypes`` are then used to wrap the C API. However, while the C++ -API is quite rich, ``libclang`` is less so. - -Sealang bridges this gap by providing C wrappers around the C++ calls that -provide the useful functionality. This library of C functions is wrapped up as -a Python C module for delivery purposes - this C module contains no exposed -*Python* objects or methods, but because it's a module, the underlying -compiled `sealang.so` file is easy to find. `ctypes` are then used to expose -the `sealang` wrapper functions; - -Internally, Sealang reproduces some minor pieces of the ``libclang`` API; -these are methods (such as the string creation and manipulation methods) that -aren't exposed as symbols for third-party use. - -All this functionality is potentially a candidate to be passed upstream to -libclang. - -Relationship to Clang -~~~~~~~~~~~~~~~~~~~~~ - -This project aims to mirror what is currently available in the Python bindings -to ``libclang``. The version number for this project is drawn from the version -and SVN revision of the official clang repository. - -Any changes made upstream to ``libclang`` will be mirrored here; any changes -made here will, where possible, be pushed upstream to ``libclang``. - -Development status -~~~~~~~~~~~~~~~~~~ - -This project was an experiment developed to support `Seasnake `__. Since Seasnake has been abandoned, so has this project. ---- -help_required: ---- -attic: yes ---- -image: sealang.png +_discoverable: no diff --git a/content/project/projects/attic/seasnake/contents.lr b/content/project/projects/attic/seasnake/contents.lr index a9b9816c3c..244e680ab6 100644 --- a/content/project/projects/attic/seasnake/contents.lr +++ b/content/project/projects/attic/seasnake/contents.lr @@ -1,37 +1,5 @@ -name: Seasnake +_model: redirect --- -project_type: bridge +new_path: /project/attic/seasnake/ --- -maturity: alpha ---- -languages: py, cpp ---- -platforms: independent ---- -short_description: A tool to manage conversion of C++ code to Python. ---- -description: - -Sometimes you will find a great algorithm, but find that the only -implementation of that algorithm is written in C or C++. In some cases -it might be possible to wrap that C/C++ code in a Python C module. -However, if a C module is not an option, you need to be able to convert -the C/C++ implementation into a Pure Python implementation. - -SeaSnake was written to automate the conversion of WebKit_ sources -into a version that could be used by Colosseum_. - -This project was an experiment; it has been abandoned. - -.. _WebKit: https://webkit.org -.. _Colosseum: https://github.com/beeware/colosseum ---- -help_required: ---- -pun: - -Seasnake converts C (sea) to Python (snake). ---- -attic: yes ---- -image: seasnake.png +_discoverable: no diff --git a/content/project/projects/attic/trebuchet/contents.lr b/content/project/projects/attic/trebuchet/contents.lr index 709fd809e0..3c100647c8 100644 --- a/content/project/projects/attic/trebuchet/contents.lr +++ b/content/project/projects/attic/trebuchet/contents.lr @@ -1,13 +1,5 @@ -name: Trebuchet +_model: redirect --- -description: Trebuchet was earmarked as a tool to help deploy websites. It was never developed. +new_path: /project/attic/trebuchet/ --- -maturity: experimental ---- -project_type: tool ---- -short_description: A tool to deploy websites ---- -attic: yes ---- -image: trebuchet.png +_discoverable: no diff --git a/content/project/projects/attic/voc/contents.lr b/content/project/projects/attic/voc/contents.lr index 7915a01466..940d86cf34 100644 --- a/content/project/projects/attic/voc/contents.lr +++ b/content/project/projects/attic/voc/contents.lr @@ -1,82 +1,5 @@ -name: VOC +_model: redirect --- -project_type: bridge +new_path: /project/attic/voc/ --- -maturity: alpha ---- -languages: java, py ---- -platforms: independent ---- -short_description: A transpiler that converts Python bytecode into Java bytecode. ---- -attic: yes ---- -description: - -VOC serves two major functions: - -* Compiles Python 3.4+ source files into Java class files, enabling you to run - Python code on a JVM (including Android's VM). -* Provides an API to let you programmatically create Java class files. - -It isn't a *fully* compliant Python 3.4 implementation just yet - there are some -language features (like ``nonlocal`` and some builtin functions) that still need to be -implemented, and there is only a bare bones standard library implementation. -However, it is possible to convert simple Python programs, and even write -`simple Android applications`_. - -To take VOC for a spin, run through the `Getting Started`_ guide, then start with the `first tutorial`_. - -If you'd like to contribute to VOC development, we have a `guide for first time contributors`_. - - -.. _Getting Started: https://voc.readthedocs.io/en/latest/index.html -.. _first tutorial: https://voc.readthedocs.io/en/latest/tutorial/tutorial-0.html -.. _simple Android applications: https://github.com/eliasdorneles/tictactoe-voc -.. _guide for first time contributors: https://voc.readthedocs.io/en/latest/how-to/contribute-code.html ---- -help_required: - -VOC has been archived. - ---- -pun: - -VOC is a backronym for "Vestigial Output Compiler". Or "Vexing Obtuse -Compiler". Or "Valuable Obscure Compiler". Or "Varigated Ocelot Calibrator". -It's your choice. - -Historically, VOC was the `Vereenigde Oostindische Compagnie (VOC)`_, or Dutch -East India Company, often considered the be the world's first multinational -corporation. It was also the first company to issue shares, and facilitate the -trading of those shares. It was granted a 21 year monopoly to carry out trade -activities in Asia, primarily the Spice Islands - the Dutch East Indies. They -established a major trading port at Batavia - now Jakarta - on the island of -Java (now part of Indonesia). - -While VOC was a very profitable business for it's shareholders, it operated as -a colonial power. Modern historians have `expressed criticism of their business -practices`_, which included exploitation of indigenous populations (including -use of slave labour), slave trade, use of violence, and environmental -destruction (including deforestation). - -VOC also played a role in the European discovery of Australia, and there are -many VOC shipwrecks on the coast of Western Australia. - -The name VOC was chosen by the project because the project founder is from -Western Australia, and VOC has a strong non-colonial presence in that state's -history. It was also a convenient pun, as VOC was an enterprise Java company. - -It should not be considered an endorsement or glorification of the -exploitative business practices of the company. - -.. _Vereenigde Oostindische Compagnie (VOC): https://en.wikipedia.org/wiki/Dutch_East_India_Company -.. _expressed criticism of their business practices: https://en.wikipedia.org/wiki/Dutch_East_India_Company#Criticism - ---- -rtfd_name: voc ---- -showcase: no ---- -github_repo: beeware/voc +_discoverable: no diff --git a/content/project/projects/attic/waggle/contents.lr b/content/project/projects/attic/waggle/contents.lr index 37b871219d..b5bcd16519 100644 --- a/content/project/projects/attic/waggle/contents.lr +++ b/content/project/projects/attic/waggle/contents.lr @@ -1,27 +1,5 @@ -name: Waggle +_model: redirect --- -project_type: tool +new_path: /project/attic/waggle/ --- -maturity: beta ---- -languages: py ---- -platforms: independent ---- -short_description: Prepares and uploads Docker images for use by BeeKeeper. ---- -description: Prepare and upload Docker images for use by BeeKeeper. ---- -help_required: ---- -pun: When a worker bee discovers a good source of nectar, it returns to the hive and performs a `waggle dance `__ - a series of moves with a specific meaning that tells other bees where they can find the nectar source. ---- -incomplete: no ---- -rtfd_name: ---- -customlogo: yes ---- -image: waggle.png ---- -github_repo: pybee/waggle +_discoverable: no diff --git a/content/project/projects/bridges/contents+de.lr b/content/project/projects/bridges/contents+de.lr deleted file mode 100644 index 33805c8bf4..0000000000 --- a/content/project/projects/bridges/contents+de.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Bridges ---- -short_description: Kühn dorthin gehen, wo noch kein Python zuvor gewesen ist ---- -sort_key: 4 ---- -description: Eine Bridge ist eine Kombination aus Werkzeug und Bibliothek, die zur Ausführung von Python-Code verwendet wird, wenn die CPython-Laufzeit nicht verwendet werden kann. Die Bridge bietet den Mechanismus zur Ausführung von Python-Code in einer anderen Laufzeitumgebung. \ No newline at end of file diff --git a/content/project/projects/bridges/contents+es.lr b/content/project/projects/bridges/contents+es.lr deleted file mode 100644 index f8b3f04098..0000000000 --- a/content/project/projects/bridges/contents+es.lr +++ /dev/null @@ -1,11 +0,0 @@ -_model: project-type ---- -title: Puentes ---- -short_description: Audazmente yendo a donde Python nunca antes ha ido ---- -sort_key: 4 ---- -description: Un puente es una combinación de herramienta y librería, que se utiliza para ejecutar código Python donde no se puede utilizar el entorno de ejecución de CPython. El puente proporciona el mecanismo para ejecutar código Python en un entorno de ejecución diferente. ---- -_slug: puentes diff --git a/content/project/projects/bridges/contents+fr.lr b/content/project/projects/bridges/contents+fr.lr deleted file mode 100644 index 3afcc09d8f..0000000000 --- a/content/project/projects/bridges/contents+fr.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Bridges ---- -short_description: S'aventurer audacieusement là où aucun Python n'est allé avant ---- -sort_key: 4 ---- -description: Un bridge est une combinaison outil & bibliothèque utilisée pour exécuter du code Python là où l'environnement d'exécution CPython ne peut être utilisé. Le bridge offre le mécanisme pour exécuter du code Python dans un environnement d'exécution différent. diff --git a/content/project/projects/bridges/contents+zh_TW.lr b/content/project/projects/bridges/contents+zh_TW.lr deleted file mode 100644 index ea84a0d3bd..0000000000 --- a/content/project/projects/bridges/contents+zh_TW.lr +++ /dev/null @@ -1,5 +0,0 @@ -description: 橋接器是一個組合工具和函式庫,用於在無法使用 CPython 運行時的情況下運行 Python 程式碼。橋接器提供了在不同的運行環境中運行Python程式碼的機制。 ---- -short_description: 大膽地去Python以前沒去過的地方 ---- -title: 橋接器 diff --git a/content/project/projects/bridges/contents.lr b/content/project/projects/bridges/contents.lr deleted file mode 100644 index fb41abc032..0000000000 --- a/content/project/projects/bridges/contents.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Bridges ---- -short_description: Boldly going where no Python has gone before ---- -sort_key: 4 ---- -description: A bridge is a combination tool & library that is used to run Python code where the CPython runtime cannot be used. The bridge provides the mechanism to run Python code in a different runtime environment. \ No newline at end of file diff --git a/content/project/projects/bridges/rubicon/contents.lr b/content/project/projects/bridges/rubicon/contents.lr index 8dbb5df343..47ff36f3ce 100644 --- a/content/project/projects/bridges/rubicon/contents.lr +++ b/content/project/projects/bridges/rubicon/contents.lr @@ -1,42 +1,5 @@ -name: Rubicon +_model: redirect --- -project_type: bridge +new_path: /project/utilities/rubicon/ --- -maturity: production ---- -languages: py, m, java ---- -platforms: macOS, iOS ---- -short_description: A library for bridging between Python and other language runtimes. ---- -description: - -Rubicon is a namespace holder for multiple different parsers: - -`rubicon-objc`_ - - A bridge interface between Python and Objective-C. - -`rubicon-java`_ - - A bridge interface between Python and Java. - -.. _rubicon-objc: https://github.com/beeware/rubicon-objc -.. _rubicon-java: https://github.com/beeware/rubicon-java ---- -help_required: ---- -pun: - -During the Roman republic, the river Rubicon marked the boundary between the Roman province of Cisalpine Gaul to the north-east and Italy proper (controlled by Rome) to the south. - -In 49BCE, Julius Caesar led a single legion, Legio XIII Gemina, south over the Rubicon from Cisalpine Gaul to Italy to make his way to Rome. In doing so, he (deliberately) broke the law on imperium and made an armed conflict with the Roman Senate inevitable. According to Suetonius, as he crossed the river, Caesar uttered the famous phrase ālea iacta est ("the die has been cast"). - -But if you're going to cross the Rubicon, you're going to need a bridge. ---- -rtfd_name: rubicon-objc ---- -customlogo: yes ---- -image: rubicon.png ---- -github_repo: beeware/rubicon +_discoverable: no diff --git a/content/project/projects/contents+ar.lr b/content/project/projects/contents+ar.lr deleted file mode 100644 index 35cac6d90f..0000000000 --- a/content/project/projects/contents+ar.lr +++ /dev/null @@ -1,14 +0,0 @@ -_model: page ---- -_template: projects.html ---- -title: مشاريع ---- -summary: مالذي يصنعه BeeWare ؟ ---- -sort_key: 4 ---- -body: مشروع BeeWare ليس أداة أو مكتبة، هو عبارة عن مجموعة من المشاريع و التي يمكن إستعمالها للمساعدة في تطوير، و معالجة و تشغيل برمجيات بايثون. كل أداة تتبع فلسفة يونكس، في إتقان العمل. كل أداة يمكن استعمالها بمفردها أو بتوصيلها مع أدوات أخرى لتوفير أدوات برمجة قويّة - ---- -_slug: diff --git a/content/project/projects/contents+de.lr b/content/project/projects/contents+de.lr deleted file mode 100644 index c653a14c0a..0000000000 --- a/content/project/projects/contents+de.lr +++ /dev/null @@ -1,14 +0,0 @@ -_model: page ---- -_template: projects.html ---- -title: Projekte ---- -summary: Was macht das BeeWare-Projekt aus? ---- -sort_key: 4 ---- -body: BeeWare ist kein einzelnes Werkzeug oder eine Bibliothek - es ist eine Sammlung von Projekten, die bei der Entwicklung, Fehlersuche und Ausführung von Python-Software helfen können. Jedes Werkzeug folgt der Unix-Philosophie, eine Sache zu tun und sie gut zu machen. Jedes Werkzeug kann isoliert verwendet werden. Du kannst die Werkzeuge aber auch miteinander verketten, um eine reichhaltige Palette von Programmierwerkzeugen bereitzustellen. - ---- -_slug: diff --git a/content/project/projects/contents+es.lr b/content/project/projects/contents+es.lr deleted file mode 100644 index b529e461d2..0000000000 --- a/content/project/projects/contents+es.lr +++ /dev/null @@ -1,13 +0,0 @@ -_model: page ---- -_template: projects.html ---- -title: Proyectos ---- -summary: ¿Qué constituye el proyecto BeeWare? ---- -sort_key: 4 ---- -body: BeeWare no es una sola herramienta o librería - es una colección de proyectos que pueden utilizarse para ayudar a desarrollar, depurar y ejecutar software Python. Cada herramienta sigue la filosofía Unix de hacer una sola cosa y hacerlo bien. Cada herramienta se puede utilizar de forma aislada, o se pueden encadenar para proporcionar un conjunto enriquecido de herramientas de programación. ---- -_slug: proyectos diff --git a/content/project/projects/contents+fr.lr b/content/project/projects/contents+fr.lr deleted file mode 100644 index 426f37a99c..0000000000 --- a/content/project/projects/contents+fr.lr +++ /dev/null @@ -1,13 +0,0 @@ -_model: page ---- -_template: projects.html ---- -title: Projets ---- -summary: De quoi le projet BeeWare est-il fait ? ---- -sort_key: 4 ---- -body: BeeWare n'est pas seulement un projet ou une bibliothèque - c'est une collection de projets qui peuvent être utilisés pour aider à développer, déboguer et lancer des logiciels en Python. Chaque outil suit la philosophie d'Unix, celle de faire une chose, et bien. Chaque outil peut être utilisé individuellement, ou ils peuvent être combinés pour offrir un ensemble d'outils de programmation riche. ---- -_slug: diff --git a/content/project/projects/contents+pt.lr b/content/project/projects/contents+pt.lr deleted file mode 100644 index a19c47ccc2..0000000000 --- a/content/project/projects/contents+pt.lr +++ /dev/null @@ -1,13 +0,0 @@ -_model: page ---- -_slug: ---- -_template: projects.html ---- -body: O BeeWare não é uma única ferramenta ou biblioteca - é uma coleção de projetos que podem ser usados para ajudar a desenvolver, depurar e lançar software Python. Cada ferramenta segue a filosofia Unix de fazer bem uma coisa. Cada ferramenta pode ser usada isoladamente, ou pode ser encadeada para fornecer um conjunto rico de ferramentas de programação. ---- -sort_key: 4 ---- -summary: No que consiste o projeto BeeWare? ---- -title: Projetos diff --git a/content/project/projects/contents+tr.lr b/content/project/projects/contents+tr.lr deleted file mode 100644 index 5715d6f95a..0000000000 --- a/content/project/projects/contents+tr.lr +++ /dev/null @@ -1,13 +0,0 @@ -_model: page ---- -_template: projects.html ---- -title: Projeler ---- -summary: BeeWare projesi nelerden oluşur? ---- -sort_key: 4 ---- -body: BeeWare tek bir araç veya kütüphane değildir, Python yazılımının geliştirilmesine, hatalarının ayıklanmasına ve başlatılmasına yardımcı olabilecek bir projeler bütünüdür. Her araç, Unix'in tek bir şeyi iyi yapma felsefesini izler. Her araç tek başına kullanılabilir ya da zengin bir programlama aracı seti sağlamak için diğer araçlar ile birlikte zincirlenebilir. ---- -_slug: diff --git a/content/project/projects/contents+zh_TW.lr b/content/project/projects/contents+zh_TW.lr deleted file mode 100644 index 86ce147f98..0000000000 --- a/content/project/projects/contents+zh_TW.lr +++ /dev/null @@ -1,15 +0,0 @@ -_model: page ---- -_template: projects.html ---- -title: 專案 ---- -summary: BeeWare 專案包含什麼? ---- -sort_key: 4 ---- -body: BeeWare 不是一個單一的工具或函式庫 - 它是可用於幫助開發、偵錯和啟動 Python 軟體的專案集。每個工具都遵循 Unix 哲學:做好一件事。每個工具都可以單獨使用,也可以連結在一起以提供一組豐富的程式設計工具。 ---- -_slug: ---- -incomplete: no \ No newline at end of file diff --git a/content/project/projects/contents.lr b/content/project/projects/contents.lr deleted file mode 100644 index 967de0762b..0000000000 --- a/content/project/projects/contents.lr +++ /dev/null @@ -1,13 +0,0 @@ -_model: page ---- -_template: projects.html ---- -title: Projects ---- -summary: What makes up the BeeWare project? ---- -sort_key: 4 ---- -body: BeeWare isn't a single tool or library - it's a collection of projects that can be used to help develop, debug and launch Python software. Each tool follows the Unix philosophy of doing one thing well. Each tool can be used in isolation, or they can be chained together to provide a rich set of programming tools. ---- -_slug: diff --git a/content/project/projects/libraries/colosseum/contents.lr b/content/project/projects/libraries/colosseum/contents.lr index 77e9f5bca9..600f91238e 100644 --- a/content/project/projects/libraries/colosseum/contents.lr +++ b/content/project/projects/libraries/colosseum/contents.lr @@ -1,50 +1,5 @@ -name: Colosseum +_model: redirect --- -project_type: library +new_path: /project/utilities/colosseum/ --- -maturity: alpha ---- -languages: py ---- -platforms: independent ---- -short_description: A (partial) implementation of the CSS box and flexbox layout algorithm. ---- -description: - -Colosseum is an independent implementation of the CSS layout algorithm. This implementation is completely standalone - it isn’t dependent on a browser, and can be run over any box-like set of objects that need to be laid out on a page (either physical or virtual). - -It takes a tree of content "nodes", such as a DOM from a HTML document, and applies CSS styling instructions to layout those nodes as boxes on the screen. In the case of `Toga `__, instead of laying out
and elements, you lay out Box and Button objects. This allows you to specify incredibly complex, adaptive layouts for Toga applications. - -But Colosseum as a project has many other possible uses. It could be used anywhere that there is a need for describing layout outside a browser context. For example, Colosseum could be the cornerstone of a HTML to PDF renderer that doesn't require the involvement of a browser. It could also be used as a test harness and reference implementation for the CSS specification itself, providing a lightweight way to encode and test proposed changes to the specification. - -The current implementation was originally based on the -`Yoga`_ project, open-sourced by Facebook. - -For more information about Colosseum, check out this `blog post `__ describing the project and talking about it's roadmap. - -.. _Yoga: https://github.com/facebook/yoga - - ---- -help_required: ---- -pun: - -The Colosseum, also known as the Flavian Amphitheater, is an ancient Roman Amphitheater in the center of Rome. It is an astounding piece of ancient architecture, noted for its three layers of arches, framed by Doric, Ionic and Corinthian half-columns, with an attic decorate with Corinthian pilasters. - -Much like Doric, Ionic and Corithian columns form the fundamental architecture of the ancient Roman world, CSS is part of the fundamental architecture of modern display computing. The regular repeating structure of the Colosseum’s arches and columns mirror the regular grid-based layout of many modern web and print designs. - -The Colosseum was also a massive undertaking for its time. Undertaking to reproduce the entire CSS specification, with all its quirks and eccentricities, is a similarly massive undertaking. - -But most importantly: **C**-olo-**SS**-eum. ---- -incomplete: no ---- -rtfd_name: colosseum ---- -customlogo: no ---- -image: colosseum.png ---- -github_repo: beeware/colosseum +_discoverable: no diff --git a/content/project/projects/libraries/contents+de.lr b/content/project/projects/libraries/contents+de.lr deleted file mode 100644 index c0973b3167..0000000000 --- a/content/project/projects/libraries/contents+de.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Bibliotheken ---- -short_description: Wiederverwendbare Code-Blöcke ---- -sort_key: 3 ---- -description: Bibliotheken sind wiederverwendbare Code-Blöcke, die in einem Projekt verwendet werden können. Bibliotheken werden normalerweise als Abhängigkeiten von Werkzeugen, Anwendungen oder anderen Bibliotheken installiert. \ No newline at end of file diff --git a/content/project/projects/libraries/contents+es.lr b/content/project/projects/libraries/contents+es.lr deleted file mode 100644 index c3cfd5ba41..0000000000 --- a/content/project/projects/libraries/contents+es.lr +++ /dev/null @@ -1,11 +0,0 @@ -_model: project-type ---- -title: Librerías ---- -short_description: Colecciones reutilizables de código ---- -sort_key: 3 ---- -description: Las librerías son bloques reutilizables de código que se pueden utilizar en un proyecto. Generalmente, las librerías se instalan como dependencias de herramientas, aplicaciones u otras librerías. ---- -_slug: librerias diff --git a/content/project/projects/libraries/contents+fr.lr b/content/project/projects/libraries/contents+fr.lr deleted file mode 100644 index 087e277510..0000000000 --- a/content/project/projects/libraries/contents+fr.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Bibliothèques ---- -short_description: Collection de code réutilisable ---- -sort_key: 3 ---- -description: Les bibliothèques sont des blocs de code réutilisables qui peuvent servir lors d'un projet. Les bibliothèques sont habituellement installées comme dépendances d'outils, d'applications, ou d'autres bibliothèques. diff --git a/content/project/projects/libraries/contents+pt.lr b/content/project/projects/libraries/contents+pt.lr deleted file mode 100644 index c8c5bb57de..0000000000 --- a/content/project/projects/libraries/contents+pt.lr +++ /dev/null @@ -1,10 +0,0 @@ -_model: project-type ---- -title: Bibliotecas ---- -short_description: Coleções reutilizáveis de código ---- -sort_key: 3 ---- -description: -As bibliotecas são blocos de código reutilizáveis ​​que podem ser usados ​​em um projeto. As bibliotecas geralmente serão instaladas como dependências de ferramentas, aplicativos ou outras bibliotecas. \ No newline at end of file diff --git a/content/project/projects/libraries/contents+zh_TW.lr b/content/project/projects/libraries/contents+zh_TW.lr deleted file mode 100644 index 6fc41536c8..0000000000 --- a/content/project/projects/libraries/contents+zh_TW.lr +++ /dev/null @@ -1,5 +0,0 @@ -description: 函式庫是可在專案中使用的可重複使用程式碼區塊。函式庫通常作為工具、應用程式或其他庫的依賴項安裝。 ---- -short_description: 可重複使用的程式碼集合 ---- -title: 函式庫 diff --git a/content/project/projects/libraries/contents.lr b/content/project/projects/libraries/contents.lr deleted file mode 100644 index 7de1b4e7ca..0000000000 --- a/content/project/projects/libraries/contents.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Libraries ---- -short_description: Reusable collections of code ---- -sort_key: 3 ---- -description: Libraries are re-usable blocks of code that can be used in a project. Libraries will usually be installed as dependencies of tools, applications, or other libraries. \ No newline at end of file diff --git a/content/project/projects/libraries/ouroboros/contents.lr b/content/project/projects/libraries/ouroboros/contents.lr index 9a2b22bc5d..fef6f8647c 100644 --- a/content/project/projects/libraries/ouroboros/contents.lr +++ b/content/project/projects/libraries/ouroboros/contents.lr @@ -1,25 +1,5 @@ -name: Ouroboros +_model: redirect --- -project_type: library +new_path: /project/attic/ouroboros/ --- -maturity: experimental ---- -languages: py ---- -platforms: independent ---- -short_description: A standalone, pure Python implementation of the Python Standard Library. This allows Python default libraries to be used portably on any implementation of the Python virtual machine---not requiring CPython. ---- -description: A standalone, pure Python implementation of the Python Standard Library. ---- -help_required: - -Expansion of unit testing. ---- -pun: The ouroboros is an ancient symbol depicting a serpent eating its own tail. Ouroboros (this library) is also similarly self-referential; it implements Python in Python itself (the subset of Python on the Python virtual machine). ---- -image: ouroboros.png ---- -rtfd_name: pybee-ouroboros ---- -github_repo: beeware/ouroboros +_discoverable: no diff --git a/content/project/projects/libraries/toga/contents.lr b/content/project/projects/libraries/toga/contents.lr index 602658d3a6..f7634a0904 100644 --- a/content/project/projects/libraries/toga/contents.lr +++ b/content/project/projects/libraries/toga/contents.lr @@ -1,68 +1,5 @@ -name: Toga +_model: redirect --- -project_type: library +new_path: /project/toga/ --- -maturity: alpha ---- -languages: py ---- -platforms: independent ---- -short_description: A Python native, OS native GUI toolkit. ---- -description: - -Toga isn’t the world’s first widget toolkit - there are dozens of other options. So why build a new one? - -*Native widgets - not themes* - -Toga uses native system widgets, not themes. When you see a Toga app running, it doesn’t just look like a native app - it is a native app. Applying an operating system-inspired theme over the top of a generic widget set is an easy way for a developer to achieve a cross-platform goal, but it leaves the end user with the mess. - -It’s easy to spot apps that have been built using themed widget sets - they’re the ones that don’t behave quite like any other app. Widgets don’t look quite right, or there’s a menu bar on a window in an OS X app. Themes can get quite close - but there are always telltale signs. - -On top of that, native widgets are always faster than a themed generic widget. After all, you’re using native system capability that has been tuned and optimized, not a drawing engine that’s been layered on top of a generic widget. - -*Abstract the broad concepts* - -It’s not enough to just look like a native app, though - you need to feel like a native app as well. - -A “Quit” option under a “File” menu makes sense if you’re writing a Windows app - but it’s completely out of place if you’re on OS X - the Quit option should be under the application menu. - -And besides - why did the developer have to code the location of a Quit option anyway? Every app in the world has to have a quit option, so why doesn’t the widget toolkit provide a quit option pre-installed, out of the box? - -Although Toga uses 100% native system widgets, that doesn’t mean Toga is just a wrapper around system widgets. Wherever possible, Toga attempts to abstract the broader concepts underpinning the construction of GUI apps, and build an API for that. So - every Toga app has the basic set of menu options you’d expect of every app - Quit, About, and so on - all in the places you’d expect to see them in a native app. - -When it comes to widgets, sometimes the abstraction is simple - after all, a button is a button, no matter what platform you’re on. But other widgets may not be exposed so literally. What the Toga API aims to expose is a set of mechanisms for achieving UI goals, not a literal widget set. - -*Python native* - -Most widget toolkits start their life as a C or C++ layer, which is then wrapped by other languages. As a result, you end up with APIs that taste like C or C++. - -Toga has been designed from the ground up to be a Python native widget toolkit. This means the API is able to exploit language level features like generators and context managers in a way that a wrapper around a C library wouldn’t be able to (at least, not easily). - -Toga runs on Python 3. It does not run on Python 2. - -*pip install and nothing more* - -Toga aims to be no more than a pip install away from use. It doesn’t require the compilation of C extensions. There’s no need to install a binary support library. There’s no need to change system paths and environment variables. Just install it, import it, and start writing (or running) code. - -*Embrace mobile* - -10 years ago, being a cross-platform widget toolkit meant being available for Windows, OS X and Linux. These days, mobile computing is much more important. But despite this, there aren’t many good options for Python programming on mobile platforms, and cross-platform mobile coding is still elusive. Toga aims to correct this. - ---- -help_required: ---- -incomplete: no ---- -pun: When in Rome, do as the Romans do. And what does a Roman wear? A Toga! ---- -rtfd_name: toga ---- -customlogo: yes ---- -showcase: yes ---- -image: toga.png ---- -github_repo: beeware/toga +_discoverable: no diff --git a/content/project/projects/libraries/travertino/contents.lr b/content/project/projects/libraries/travertino/contents.lr index 8eae1f22ed..b6a7c0a092 100644 --- a/content/project/projects/libraries/travertino/contents.lr +++ b/content/project/projects/libraries/travertino/contents.lr @@ -1,41 +1,5 @@ -name: travertino +_model: redirect --- -project_type: library +new_path: /project/utilities/travertino/ --- -maturity: alpha ---- -languages: py ---- -platforms: independent ---- -short_description: A base library for building layout algorithms ---- -description: - -Travertino is a library describing constants and a base box model that can be -used to define layout algorithms. - -It is used as a foundation for the Pack box model in `Toga -`__, and for `Colosseum -`__. ---- -help_required: ---- -pun: - -Travertine (Travertino in Italian) is a type of limestone that has been used as -a building material for thousands of years. The name derives from the Latin -`tiburtinus`, meaning "of Tibur" - Tibur being a town near Rome that was the -historical source of Travertine. - -Travertine is the building material that was used to build the Colosseum. ---- -incomplete: no ---- -rtfd_name: travertino ---- -customlogo: no ---- -image: travertino.png ---- -github_repo: beeware/travertino +_discoverable: no diff --git a/content/project/projects/support/contents+de.lr b/content/project/projects/support/contents+de.lr deleted file mode 100644 index 05b283e656..0000000000 --- a/content/project/projects/support/contents+de.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Support ---- -short_description: Python für jede Jahreszeit ---- -sort_key: 6 ---- -description: Supportprojekte sind vorgefertigte Bündel von kompilierten Artefakten, die für die Ausführung von Python auf einer bestimmten Plattform benötigt werden. diff --git a/content/project/projects/support/contents+es.lr b/content/project/projects/support/contents+es.lr deleted file mode 100644 index cd25755700..0000000000 --- a/content/project/projects/support/contents+es.lr +++ /dev/null @@ -1,11 +0,0 @@ -_model: project-type ---- -title: Soporte ---- -short_description: Python para cada estación ---- -sort_key: 6 ---- -description: Los proyectos de soporte son paquetes pre-empaquetados con artefactos compilados que se necesitan para ejecutar Python en una plataforma determinada. ---- -_slug: soporte diff --git a/content/project/projects/support/contents+fr.lr b/content/project/projects/support/contents+fr.lr deleted file mode 100644 index 94bbbedd17..0000000000 --- a/content/project/projects/support/contents+fr.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Supports ---- -short_description: Python en toute saison ---- -sort_key: 6 ---- -description: Les projets de support sont des ensembles pré-empaquetés d'artefacts compilés nécessaires pour exécuter Python sur une plateforme donnée. diff --git a/content/project/projects/support/contents+zh_TW.lr b/content/project/projects/support/contents+zh_TW.lr deleted file mode 100644 index 162fc05d5b..0000000000 --- a/content/project/projects/support/contents+zh_TW.lr +++ /dev/null @@ -1,5 +0,0 @@ -description: 支援專案是預先打包的已編譯工件的捆綁包,需要在特定平台上執行 Python。 ---- -short_description: 適合每個章節的 Python ---- -title: 支援 diff --git a/content/project/projects/support/contents.lr b/content/project/projects/support/contents.lr deleted file mode 100644 index aa62a869bd..0000000000 --- a/content/project/projects/support/contents.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Support ---- -short_description: Python for every season ---- -sort_key: 6 ---- -description: Support projects are pre-packaged bundles of compiled artefacts that are needed to run Python on a particular platform. diff --git a/content/project/projects/support/python-android-support/contents.lr b/content/project/projects/support/python-android-support/contents.lr index 0ef51eb546..ae8e8f80e5 100644 --- a/content/project/projects/support/python-android-support/contents.lr +++ b/content/project/projects/support/python-android-support/contents.lr @@ -1,25 +1,5 @@ -name: Python Android Support +_model: redirect --- -languages: py, java +new_path: /project/attic/python-android-support/ --- -maturity: production ---- -platforms: android ---- -project_type: support ---- -description: - - -This is a meta-package for building a version of Python (and supporting libraries) -that can be embedded into an Android project. - -It works by downloading, patching and building libraries in Android-compatible -format. - ---- -short_description: A meta-package for building a version of Python that can be embedded into an Android project. ---- -image: python-android-support.png ---- -github_repo: beeware/Python-Android-support +_discoverable: no diff --git a/content/project/projects/support/python-apple-support/contents.lr b/content/project/projects/support/python-apple-support/contents.lr index 89df1a5d0d..28dfe48510 100644 --- a/content/project/projects/support/python-apple-support/contents.lr +++ b/content/project/projects/support/python-apple-support/contents.lr @@ -1,21 +1,5 @@ -name: Python Apple Support +_model: redirect --- -languages: py, c +new_path: /project/utilities/python-apple-support/ --- -maturity: beta ---- -platforms: macOS, iOS, tvOS, watchOS ---- -project_type: support ---- -short_description: A meta-package for building a version of Python that can be embedded into a macOS, iOS, tvOS or watchOS project. ---- -incomplete: yes ---- -description: A meta-package for building a version of Python that can be embedded into a macOS, iOS, tvOS or watchOS project. ---- -customlogo: yes ---- -image: python-apple-support.png ---- -github_repo: beeware/Python-Apple-support +_discoverable: no diff --git a/content/project/projects/support/python-linux-support/contents.lr b/content/project/projects/support/python-linux-support/contents.lr index b95363a09c..5184e93e87 100644 --- a/content/project/projects/support/python-linux-support/contents.lr +++ b/content/project/projects/support/python-linux-support/contents.lr @@ -1,21 +1,5 @@ -name: Python Linux Support +_model: redirect --- -languages: py, c +new_path: /project/attic/python-linux-support/ --- -maturity: beta ---- -platforms: linux ---- -project_type: support ---- -short_description: A meta-package for building a version of Python that can be embedded into a Linux project. ---- -incomplete: no ---- -description: A meta-package for building a version of Python that can be embedded into a Linux project. ---- -customlogo: yes ---- -image: python-linux-support.png ---- -github_repo: beeware/Python-Linux-support +_discoverable: no diff --git a/content/project/projects/templates/contents+de.lr b/content/project/projects/templates/contents+de.lr deleted file mode 100644 index 468b86dc63..0000000000 --- a/content/project/projects/templates/contents+de.lr +++ /dev/null @@ -1,11 +0,0 @@ -_model: project-type ---- -title: Templates ---- -short_description: C steht für Cookie, ist gut genug für mich... ---- -sort_key: 5 ---- -description: Templates sind `Cookiecutter`_ - Konfigurationen um den Boilerplate-Code zu generieren, der benötigt wird, um ein Python-Projekt als Anwendung auf einer bestimmten Plattform zum Laufen zu bringen. - -.. _Cookiecutter: https://github.com/audreyr/cookiecutter diff --git a/content/project/projects/templates/contents+es.lr b/content/project/projects/templates/contents+es.lr deleted file mode 100644 index f5a3a83353..0000000000 --- a/content/project/projects/templates/contents+es.lr +++ /dev/null @@ -1,15 +0,0 @@ -_model: project-type ---- -title: Plantillas ---- -short_description: C es de 'Cookie', es lo suficientemente bueno para mí ... ---- -sort_key: 5 ---- -description: - -Las plantillas de configuración de `Cookiecutter`_ permiten generar el código base necesario para obtener un proyecto de Python que se ejecuta como una aplicación en una plataforma en particular. - -.. _Cookiecutter: https://github.com/audreyr/cookiecutter ---- -_slug: plantillas diff --git a/content/project/projects/templates/contents+fr.lr b/content/project/projects/templates/contents+fr.lr deleted file mode 100644 index 97430e2d86..0000000000 --- a/content/project/projects/templates/contents+fr.lr +++ /dev/null @@ -1,11 +0,0 @@ -_model: project-type ---- -title: Modèles ---- -short_description: C comme Cookie, c'est assez bon pour moi... ---- -sort_key: 5 ---- -description: Les modèles sont des configurations `Cookiecutter`_ permettant de générer le code d'amorçage nécessaire pour exécuter un projet Python en tant qu'application sur une plateforme donnée. - -.. _Cookiecutter: https://github.com/audreyr/cookiecutter diff --git a/content/project/projects/templates/contents+zh_TW.lr b/content/project/projects/templates/contents+zh_TW.lr deleted file mode 100644 index 8143c8d8c6..0000000000 --- a/content/project/projects/templates/contents+zh_TW.lr +++ /dev/null @@ -1,9 +0,0 @@ -description: - -範本是 `Cookiecutter`_ 設定來產生讓 Python 專案作為應用程式在特定平台上運行所需的樣板程式碼。 - -.. _Cookiecutter: https://github.com/audreyr/cookiecutter ---- -short_description: C for Cookie,對我來說已經足夠了... ---- -title: 範本 diff --git a/content/project/projects/templates/contents.lr b/content/project/projects/templates/contents.lr deleted file mode 100644 index 6bd9e39f98..0000000000 --- a/content/project/projects/templates/contents.lr +++ /dev/null @@ -1,11 +0,0 @@ -_model: project-type ---- -title: Templates ---- -short_description: C is for Cookie, is good enough for me... ---- -sort_key: 5 ---- -description: Templates are `Cookiecutter`_ configurations to generate the boilerplate code needed to get a Python project running as an application on a particular platform. - -.. _Cookiecutter: https://github.com/audreyr/cookiecutter diff --git a/content/project/projects/templates/python-android-template/contents.lr b/content/project/projects/templates/python-android-template/contents.lr index ffe0000a02..aaa31e22c6 100644 --- a/content/project/projects/templates/python-android-template/contents.lr +++ b/content/project/projects/templates/python-android-template/contents.lr @@ -1,38 +1,5 @@ -name: Python Android Template +_model: redirect --- -project_type: template +new_path: /project/attic/python-android-template/ --- -maturity: alpha ---- -languages: java, py ---- -platforms: android ---- -short_description: A cookiecutter template for creating an Android project running Python code. ---- -description: - -A template for building Python apps that will run on Android devices, such as phones and tablets. It uses `cookiecutter`_ which creates projects from cookiecutters (project templates). -The easiest way to use this project is to not use it at all - at least, not directly. `Briefcase`_ is a tool that uses this template, rolling it out using data extracted from your setup.py - -The following Python versions are supported: - -* `Python 3.4`_ -* `Python 3.5`_ - -.. _cookiecutter: https://cookiecutter.readthedocs.io -.. _Briefcase: /project/projects/tools/briefcase -.. _Python 3.4: https://github.com/beeware/Python-Android-template/tree/3.4 -.. _Python 3.5: https://github.com/beeware/Python-Android-template/tree/3.5 - - ---- -help_required: ---- -incomplete: yes ---- -customlogo: yes ---- -image: python-android-template.png ---- -github_repo: beeware/python-android-template +_discoverable: no diff --git a/content/project/projects/templates/python-ios-template/contents.lr b/content/project/projects/templates/python-ios-template/contents.lr index b61a8059c5..b01dccda59 100644 --- a/content/project/projects/templates/python-ios-template/contents.lr +++ b/content/project/projects/templates/python-ios-template/contents.lr @@ -1,23 +1,5 @@ -name: Python iOS Template +_model: redirect --- -project_type: template +new_path: /project/attic/python-ios-template/ --- -maturity: beta ---- -languages: py, m ---- -platforms: iOS ---- -short_description: A template for building Python apps that will run on iOS devices. ---- -description: A template for building Python apps that will run on iOS devices, such as iPhones and iPads. ---- -help_required: ---- -incomplete: yes ---- -customlogo: yes ---- -image: python-ios-template.png ---- -github_repo: beeware/python-ios-template +_discoverable: no diff --git a/content/project/projects/templates/python-macos-template/contents.lr b/content/project/projects/templates/python-macos-template/contents.lr index 0318de92fa..8212980e15 100644 --- a/content/project/projects/templates/python-macos-template/contents.lr +++ b/content/project/projects/templates/python-macos-template/contents.lr @@ -1,19 +1,5 @@ -name: Python macOS Template +_model: redirect --- -project_type: template +new_path: /project/attic/python-macos-template/ --- -maturity: beta ---- -languages: py, m ---- -platforms: macOS ---- -short_description: A template for building Python apps that will run on Apple macOS devices. ---- -description: A template for building Python apps that will run on Apple macOS devices, such as MacBooks and iMacs. ---- -help_required: ---- -incomplete: yes ---- -github_repo: beeware/python-macos-template +_discoverable: no diff --git a/content/project/projects/templates/python-tvos-template/contents.lr b/content/project/projects/templates/python-tvos-template/contents.lr index ba6bae0a75..1aa2e710d9 100644 --- a/content/project/projects/templates/python-tvos-template/contents.lr +++ b/content/project/projects/templates/python-tvos-template/contents.lr @@ -1,19 +1,5 @@ -name: Python tvOS Template +_model: redirect --- -project_type: template +new_path: /project/attic/python-tvos-template/ --- -maturity: alpha ---- -languages: py, c ---- -platforms: tvOS ---- -short_description: A template for building Python apps that will run on Apple tvOS devices. ---- -description: A template for building Python apps that will run on Apple tvOS devices, such as the AppleTV. ---- -help_required: ---- -incomplete: yes ---- -github_repo: beeware/python-tvos-template +_discoverable: no diff --git a/content/project/projects/tools/beefore/contents.lr b/content/project/projects/tools/beefore/contents.lr index 26ead59210..6bd4f4a6b3 100644 --- a/content/project/projects/tools/beefore/contents.lr +++ b/content/project/projects/tools/beefore/contents.lr @@ -1,43 +1,5 @@ -name: Beefore +_model: redirect --- -description: - -Although code exists to be compiled or executed by a computer, it's also there to be read by humans. A computer doesn't care what code looks like, as long as it's valid syntax. However, there's a lot you can do in the formatting and styling of code to make that code even more readable by humans. - -These are mostly simple things, like consistency in indentation, spacing, and line length. Every language has it's own conventions; each project will have it's own specialisations of those conventions. BeeWare is no exception. - -Someone reviewing a patch still needs to check for correct logic, but these simple style-check tasks are easy to check programatically. Many text editors will (or have extensions that will) do this process for you - the task is called *linting*. Beefore is a tool that allows you to integrate these checks into your Github pre-merge procedure, in the same way that can integrate continuous integration and test suite compliance before merging. - -It isn't just limited to code style though. Any check that can be objectively measured can be performed as part of the pre-merge procedure. This could include: - -* Checking for a Developer Certificate of Origin, Contributor License Agreement, or some other contribution licensing procedure. -* Evaluating code complexity -* Evaluating code coverage - -and many others. - -Beefore piggybacks on your the continuous integration process you already use to run your test suite before merging commits (e.g., Travis-CI). The Beefore tests are executed as a custom test run. - +new_path: /project/attic/beefore/ --- -help_required: - -* Improving existing linters -* Integrating new linters and style checks (e.g., Java) ---- -languages: py, js ---- -maturity: alpha ---- -platforms: independent ---- -project_type: tool ---- -pun: It checks for all the things you have to have right *before* you merge a patch. ---- -short_description: Performs pre-merge checks (such as code style) on a pull request. ---- -customlogo: yes ---- -image: beefore.png ---- -github_repo: beeware/beefore +_discoverable: no diff --git a/content/project/projects/tools/beekeeper/contents.lr b/content/project/projects/tools/beekeeper/contents.lr index 76771d6401..2a3c534b9f 100644 --- a/content/project/projects/tools/beekeeper/contents.lr +++ b/content/project/projects/tools/beekeeper/contents.lr @@ -1,27 +1,5 @@ -name: BeeKeeper +_model: redirect --- -project_type: tool +new_path: /project/attic/beekeeper/ --- -maturity: beta ---- -languages: py ---- -platforms: independent ---- -short_description: Build and CI tool ---- -description: BeeKeeper is a tool for running Docker containers on demand, with GitHub status reporting. As a side effect, this makes it very effective as an automated code review tool, a CI system, an automated deployment system, and many other things. ---- -help_required: ---- -pun: Someone has to look after the health and wellbeing of all the bees... ---- -incomplete: no ---- -rtfd_name: pybee-beekeeper ---- -customlogo: yes ---- -image: beekeeper.png ---- -github_repo: beeware/beekeeper +_discoverable: no diff --git a/content/project/projects/tools/briefcase/contents.lr b/content/project/projects/tools/briefcase/contents.lr index a9a202f48f..18a5ea6f7d 100644 --- a/content/project/projects/tools/briefcase/contents.lr +++ b/content/project/projects/tools/briefcase/contents.lr @@ -1,53 +1,5 @@ -name: Briefcase +_model: redirect --- -project_type: tool +new_path: /project/briefcase/ --- -maturity: beta ---- -languages: py ---- -platforms: macOS, iOS, android, tvOS, win ---- -short_description: Convert a Python project into a standalone native application. ---- -description: - -Briefcase is a tool for converting a Python project into a standalone native -application. You can package projects for: - -* Mac -* Windows -* Linux -* iPhone/iPad -* Android - -Support for AppleTV, watchOS, wearOS and web deployments is planned. - -If you want to see Briefcase in action, try the `BeeWare tutorial -`__. That tutorial walks you through the -process of creating and packaging a new application with Briefcase. - ---- -help_required: - -Briefcase is part of the BeeWare suite. - -If you experience problems with Briefcase, log them on `GitHub`_ . If you want -to contribute code, please `fork`_ the code and submit a `pull request`_. - -.. _GitHub: https://github.com/beeware/briefcase/issues -.. _fork: https://github.com/beeware/briefcase -.. _pull request: https://github.com/beeware/briefcase/pulls - - -incomplete: yes ---- -rtfd_name: briefcase ---- -customlogo: yes ---- -showcase: yes ---- -image: briefcase.png ---- -github_repo: beeware/briefcase +_discoverable: no diff --git a/content/project/projects/tools/bugjar/contents.lr b/content/project/projects/tools/bugjar/contents.lr index e67e09f709..2709e197b9 100644 --- a/content/project/projects/tools/bugjar/contents.lr +++ b/content/project/projects/tools/bugjar/contents.lr @@ -1,43 +1,5 @@ -name: Bugjar +_model: redirect --- -project_type: tool +new_path: /project/applications/bugjar/ --- -maturity: experimental ---- -languages: py ---- -platforms: macOS ---- -short_description: A interactive graphical debugger for Python code. ---- -description: - -Anyone who learned to code in the mid to late 80s probably spent some -time with a Borland compiler -- probably either Turbo Pascal or Turbo C. -One of the best features of the Turbo compilers was their IDE -- and -in particular, a really good visual debugger that would let you inspect -code while it was running. - -Then we all moved to Unix, and somehow forgot what a good debugger was. -GDB is perfectly functional, but isn't very intuitive. GDB gives you -perfect control over the execution of your code, but bad contextual -information to let you know what control you should be exercising. - -Then came Python. Python's execution model contains excellent debugging -hooks, and supplies PDB as a proof of concept. PDB is an interface that -shares many similarities with GDB -- text mode, fantastic control, but -very bad contextual information. - -So - enter ``bugjar``. A graphical interface for debugging code. -PDB, but with the context to help you step through code in a meaningful way. - ---- -help_required: ---- -rtfd_name: bugjar ---- -customlogo: yes ---- -image: bugjar.png ---- -github_repo: beeware/bugjar +_discoverable: no diff --git a/content/project/projects/tools/contents+de.lr b/content/project/projects/tools/contents+de.lr deleted file mode 100644 index ddeee79884..0000000000 --- a/content/project/projects/tools/contents+de.lr +++ /dev/null @@ -1,10 +0,0 @@ -_model: project-type ---- -title: Werkzeuge ---- -short_description: Projekt zur Unterstützung der Entwicklung ---- -sort_key: 2 ---- -description: Ein Werkzeug ist eine spezielle Art von An- -wendung, die in einer virtuellen Python-Umgebung installiert wird. Werkzeuge werden eingesetzt, um die Entwicklung von Anwendungen zu unterstützen, von der Fehlersuche und dem Testen von Funktionen bis hin zum Packaging. diff --git a/content/project/projects/tools/contents+es.lr b/content/project/projects/tools/contents+es.lr deleted file mode 100644 index 494ec81e77..0000000000 --- a/content/project/projects/tools/contents+es.lr +++ /dev/null @@ -1,11 +0,0 @@ -_model: project-type ---- -title: Herramientas ---- -short_description: Proyecto para ayudar al desarrollo ---- -sort_key: 2 ---- -description: Una herramienta es una clase especial de aplicación que se instala en un entorno virtual de Python. Las herramientas se utilizan para ayudar en el desarrollar de aplicaciones, en funciones de depuración y pruebas hasta empaquetado. ---- -_slug: herramientas diff --git a/content/project/projects/tools/contents+fr.lr b/content/project/projects/tools/contents+fr.lr deleted file mode 100644 index c420e9fa1e..0000000000 --- a/content/project/projects/tools/contents+fr.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Outils ---- -short_description: Projet pour aider au développement ---- -sort_key: 2 ---- -description: Un outil est une classe d'application spéciale installée dans un environnement virtuel Python. Les outils servent à assister le développement d'applications autonomes, avec des rôles allant du débogage et du test jusqu'à l'empaquetage. diff --git a/content/project/projects/tools/contents+zh_TW.lr b/content/project/projects/tools/contents+zh_TW.lr deleted file mode 100644 index e3abc1d28c..0000000000 --- a/content/project/projects/tools/contents+zh_TW.lr +++ /dev/null @@ -1,5 +0,0 @@ -description: 工具是安裝到 Python 虛擬環境中的一類特殊應用程式。工具用於在開發獨立應用程式時提供協助,其作用包括從偵錯、測試到打包。 ---- -short_description: 輔助開發的專案 ---- -title: 工具 diff --git a/content/project/projects/tools/contents.lr b/content/project/projects/tools/contents.lr deleted file mode 100644 index 5384da45bb..0000000000 --- a/content/project/projects/tools/contents.lr +++ /dev/null @@ -1,9 +0,0 @@ -_model: project-type ---- -title: Tools ---- -short_description: Project to aid development ---- -sort_key: 2 ---- -description: A tool is a special class of application that is installed into a Python virtual environment. Tools are used to assist when developing standalone applications, in roles from debugging and testing to packaging. diff --git a/content/project/projects/tools/cricket/contents.lr b/content/project/projects/tools/cricket/contents.lr index 84bb8329b9..4c5026a0fd 100644 --- a/content/project/projects/tools/cricket/contents.lr +++ b/content/project/projects/tools/cricket/contents.lr @@ -1,49 +1,5 @@ -name: Cricket +_model: redirect --- -short_description: Test runner GUI that finds failures fast +new_path: /project/applications/cricket/ --- -description: - - -Cricket is a graphical tool that helps projects with large test suites **identify failures without waiting** for all your tests to finish. - -Normal unittest test runners dump all output to the console, and provide very -little detail while the suite is running. As a result: - - * You can't start looking at failures until the test suite has completed running, - - * It isn't a very accessible format for identifying patterns in test failures, - - * It can be hard (or cumbersome) to re-run any tests that have failed. - ---- -help_required: Needs to be ported to Toga ---- -maturity: beta ---- -languages: py ---- -platforms: macOS, linux, win ---- -project_type: tool ---- -pun: - -`Test Cricket`_ is the most prestigious version of -the game of cricket. Games last for up to 5 days... just like running some -test suites. The usual approach for making cricket watchable is a generous -dose of beer; in programming, `Balmer Peak`_ limits come into effect, so -something else is required... - -.. _Test Cricket: https://en.wikipedia.org/wiki/Test_cricket -.. _Balmer Peak: https://xkcd.com/323/ ---- -rtfd_name: cricket ---- -customlogo: yes ---- -showcase: yes ---- -image: cricket.png ---- -github_repo: beeware/cricket +_discoverable: no diff --git a/content/project/projects/tools/duvet/contents.lr b/content/project/projects/tools/duvet/contents.lr index 30f711e0e8..124d2ed2e7 100644 --- a/content/project/projects/tools/duvet/contents.lr +++ b/content/project/projects/tools/duvet/contents.lr @@ -1,28 +1,5 @@ -name: Duvet +_model: redirect --- -project_type: tool +new_path: /project/applications/duvet/ --- -maturity: alpha ---- -languages: py ---- -platforms: independent ---- -short_description: Coverage visualization tool ---- -description: Duvet is a GUI tool for visualizing code coverage results produced by `coverage.py `__. ---- -help_required: ---- -pun: Because a duvet doesn't just provide coverage - it keeps you warm and cozy. ---- -incomplete: yes ---- -rtfd_name: duvet ---- -customlogo: yes ---- -image: duvet.png ---- -github_repo: beeware/duvet - +_discoverable: no diff --git a/content/project/projects/tools/galley/contents.lr b/content/project/projects/tools/galley/contents.lr index e67fac7bb2..e7ec546e84 100644 --- a/content/project/projects/tools/galley/contents.lr +++ b/content/project/projects/tools/galley/contents.lr @@ -1,29 +1,5 @@ -name: Galley +_model: redirect --- -project_type: tool +new_path: /project/applications/galley/ --- -maturity: experimental ---- -languages: py ---- -platforms: independent ---- -short_description: A GUI tool for reviewing RST/Sphinx documentation ---- -description: - -Galley is a GUI tool to assist in drafting documentation. - - ---- -help_required: ---- -pun: **galley** *n.* a printer's proof in the form of long single-column strips, not in sheets or pages. ---- -incomplete: yes ---- -customlogo: yes ---- -image: galley.png ---- -github_repo: beeware/galley +_discoverable: no diff --git a/content/project/projects/libraries/toga/contents+ar.lr b/content/project/toga/contents+ar.lr similarity index 100% rename from content/project/projects/libraries/toga/contents+ar.lr rename to content/project/toga/contents+ar.lr diff --git a/content/project/projects/libraries/toga/contents+es.lr b/content/project/toga/contents+es.lr similarity index 100% rename from content/project/projects/libraries/toga/contents+es.lr rename to content/project/toga/contents+es.lr diff --git a/content/project/toga/contents.lr b/content/project/toga/contents.lr new file mode 100644 index 0000000000..a04202bb04 --- /dev/null +++ b/content/project/toga/contents.lr @@ -0,0 +1,66 @@ +name: Toga +--- +maturity: alpha +--- +languages: py +--- +platforms: independent +--- +short_description: A Python native, OS native GUI toolkit. +--- +description: + +Toga isn’t the world’s first widget toolkit - there are dozens of other options. So why build a new one? + +*Native widgets - not themes* + +Toga uses native system widgets, not themes. When you see a Toga app running, it doesn’t just look like a native app - it is a native app. Applying an operating system-inspired theme over the top of a generic widget set is an easy way for a developer to achieve a cross-platform goal, but it leaves the end user with the mess. + +It’s easy to spot apps that have been built using themed widget sets - they’re the ones that don’t behave quite like any other app. Widgets don’t look quite right, or there’s a menu bar on a window in an OS X app. Themes can get quite close - but there are always telltale signs. + +On top of that, native widgets are always faster than a themed generic widget. After all, you’re using native system capability that has been tuned and optimized, not a drawing engine that’s been layered on top of a generic widget. + +*Abstract the broad concepts* + +It’s not enough to just look like a native app, though - you need to feel like a native app as well. + +A “Quit” option under a “File” menu makes sense if you’re writing a Windows app - but it’s completely out of place if you’re on OS X - the Quit option should be under the application menu. + +And besides - why did the developer have to code the location of a Quit option anyway? Every app in the world has to have a quit option, so why doesn’t the widget toolkit provide a quit option pre-installed, out of the box? + +Although Toga uses 100% native system widgets, that doesn’t mean Toga is just a wrapper around system widgets. Wherever possible, Toga attempts to abstract the broader concepts underpinning the construction of GUI apps, and build an API for that. So - every Toga app has the basic set of menu options you’d expect of every app - Quit, About, and so on - all in the places you’d expect to see them in a native app. + +When it comes to widgets, sometimes the abstraction is simple - after all, a button is a button, no matter what platform you’re on. But other widgets may not be exposed so literally. What the Toga API aims to expose is a set of mechanisms for achieving UI goals, not a literal widget set. + +*Python native* + +Most widget toolkits start their life as a C or C++ layer, which is then wrapped by other languages. As a result, you end up with APIs that taste like C or C++. + +Toga has been designed from the ground up to be a Python native widget toolkit. This means the API is able to exploit language level features like generators and context managers in a way that a wrapper around a C library wouldn’t be able to (at least, not easily). + +Toga runs on Python 3. It does not run on Python 2. + +*pip install and nothing more* + +Toga aims to be no more than a pip install away from use. It doesn’t require the compilation of C extensions. There’s no need to install a binary support library. There’s no need to change system paths and environment variables. Just install it, import it, and start writing (or running) code. + +*Embrace mobile* + +10 years ago, being a cross-platform widget toolkit meant being available for Windows, OS X and Linux. These days, mobile computing is much more important. But despite this, there aren’t many good options for Python programming on mobile platforms, and cross-platform mobile coding is still elusive. Toga aims to correct this. + +--- +help_required: +--- +incomplete: no +--- +pun: When in Rome, do as the Romans do. And what does a Roman wear? A Toga! +--- +rtfd_name: toga +--- +customlogo: yes +--- +showcase: yes +--- +image: toga.png +--- +github_repo: beeware/toga diff --git a/content/project/projects/libraries/toga/toga.png b/content/project/toga/toga.png similarity index 100% rename from content/project/projects/libraries/toga/toga.png rename to content/project/toga/toga.png diff --git a/content/project/using/contents+de.lr b/content/project/using/contents+de.lr deleted file mode 100644 index 9e92ad321f..0000000000 --- a/content/project/using/contents+de.lr +++ /dev/null @@ -1,15 +0,0 @@ -name: Verwendung der Beeware Suite ---- -summary: Wie beginne ich, die BeeWare-Tools zu benutzen? ---- -title: Wie wird BeeWare benutzt? ---- -body: - -Die BeeWare-Suite besteht aus vielen Projekten - so vielen, dass es leicht ist, verwirrt zu sein und nicht zu wissen, wo man anfangen soll. - -Der beste Ort zum Beginnen ist das `BeeWare Tutorial -`__. Es wird dich durch den Prozess der Erstellung einer Anwendung mit der BeeWare-Toolsammlung führen. - ---- -sort_key: 3 diff --git a/content/project/using/contents+es.lr b/content/project/using/contents+es.lr deleted file mode 100644 index d0969d0a34..0000000000 --- a/content/project/using/contents+es.lr +++ /dev/null @@ -1,21 +0,0 @@ -name: Uso de la suite Beeware ---- -summary: ¿Qué piezas de la suite BeeWare necesitas usar? ---- -title: Cómo utilizar BeeWare ---- -body: - -La suite BeeWare está compuesta por muchos proyectos, tantos, que es fácil -confundirse y no saber por dónde empezar. - -El mejor lugar para comenzar es el `Tutorial de BeeWare -` __. Le guiará a través del proceso de -creación de una aplicación utilizando el conjunto de herramientas BeeWare. - -Quiero... -========== ---- -sort_key: 3 ---- -_slug: como-utilizar diff --git a/content/project/using/contents+zh_TW.lr b/content/project/using/contents+zh_TW.lr deleted file mode 100644 index efdb9287e9..0000000000 --- a/content/project/using/contents+zh_TW.lr +++ /dev/null @@ -1,9 +0,0 @@ -body: - -BeeWare 套件由許多項目組成 - 數量如此之多,以至於很容易感到困惑,不知道從哪裡開始。 - -最好的起點是 `BeeWare 教學 `__。 它將引導您完成使用 BeeWare 工具建立應用程式的過程。 ---- -summary: 如何開始使用 BeeWare 工具? ---- -title: 如何使用 BeeWare diff --git a/content/project/using/contents.lr b/content/project/using/contents.lr index 6d09edf4c2..b1c7f9df05 100644 --- a/content/project/using/contents.lr +++ b/content/project/using/contents.lr @@ -1,17 +1,5 @@ -name: Using the Beeware Suite +_model: redirect --- -summary: How do I get started using the BeeWare tools? +new_path: https://beeware.readthedocs.io/ --- -title: How to use BeeWare ---- -body: - -The BeeWare suite is made up of a lot of projects - so many, that it's easy to -get confused and not know where to start. - -The best place to start is the `BeeWare Tutorial -`__. It will walk you through the process -of creating an application using the BeeWare suite of tools. - ---- -sort_key: 3 +_discoverable: no \ No newline at end of file diff --git a/content/project/projects/libraries/colosseum/colosseum.png b/content/project/utilities/colosseum/colosseum.png similarity index 100% rename from content/project/projects/libraries/colosseum/colosseum.png rename to content/project/utilities/colosseum/colosseum.png diff --git a/content/project/projects/libraries/colosseum/contents+es.lr b/content/project/utilities/colosseum/contents+es.lr similarity index 100% rename from content/project/projects/libraries/colosseum/contents+es.lr rename to content/project/utilities/colosseum/contents+es.lr diff --git a/content/project/projects/libraries/colosseum/contents+pt.lr b/content/project/utilities/colosseum/contents+pt.lr similarity index 100% rename from content/project/projects/libraries/colosseum/contents+pt.lr rename to content/project/utilities/colosseum/contents+pt.lr diff --git a/content/project/utilities/colosseum/contents.lr b/content/project/utilities/colosseum/contents.lr new file mode 100644 index 0000000000..797e30fe1a --- /dev/null +++ b/content/project/utilities/colosseum/contents.lr @@ -0,0 +1,52 @@ +name: Colosseum +--- +project_type: utility +--- +maturity: alpha +--- +languages: py +--- +platforms: independent +--- +short_description: A (partial) implementation of the CSS box and flexbox layout algorithm. +--- +description: + +Colosseum is an independent implementation of the CSS layout algorithm. This implementation is completely standalone - it isn’t dependent on a browser, and can be run over any box-like set of objects that need to be laid out on a page (either physical or virtual). + +It takes a tree of content "nodes", such as a DOM from a HTML document, and applies CSS styling instructions to layout those nodes as boxes on the screen. In the case of `Toga `__, instead of laying out
and elements, you lay out Box and Button objects. This allows you to specify incredibly complex, adaptive layouts for Toga applications. + +But Colosseum as a project has many other possible uses. It could be used anywhere that there is a need for describing layout outside a browser context. For example, Colosseum could be the cornerstone of a HTML to PDF renderer that doesn't require the involvement of a browser. It could also be used as a test harness and reference implementation for the CSS specification itself, providing a lightweight way to encode and test proposed changes to the specification. + +The current implementation was originally based on the +`Yoga`_ project, open-sourced by Facebook. + +For more information about Colosseum, check out this `blog post `__ describing the project and talking about it's roadmap. + +.. _Yoga: https://github.com/facebook/yoga + + +--- +help_required: +--- +pun: + +The Colosseum, also known as the Flavian Amphitheater, is an ancient Roman Amphitheater in the center of Rome. It is an astounding piece of ancient architecture, noted for its three layers of arches, framed by Doric, Ionic and Corinthian half-columns, with an attic decorate with Corinthian pilasters. + +Much like Doric, Ionic and Corithian columns form the fundamental architecture of the ancient Roman world, CSS is part of the fundamental architecture of modern display computing. The regular repeating structure of the Colosseum’s arches and columns mirror the regular grid-based layout of many modern web and print designs. + +The Colosseum was also a massive undertaking for its time. Undertaking to reproduce the entire CSS specification, with all its quirks and eccentricities, is a similarly massive undertaking. + +But most importantly: **C**-olo-**SS**-eum. +--- +incomplete: no +--- +rtfd_name: colosseum +--- +customlogo: no +--- +image: colosseum.png +--- +github_repo: beeware/colosseum +--- +sort_key: 3 diff --git a/content/project/utilities/contents.lr b/content/project/utilities/contents.lr new file mode 100644 index 0000000000..05903f97d8 --- /dev/null +++ b/content/project/utilities/contents.lr @@ -0,0 +1,15 @@ +_model: project-type +--- +title: Utilities +--- +short_description: Pieces used by other BeeWare tools +--- +hide_from_project: yes +--- +category_type: utility +--- +important: yes +--- +project_page_description: Pieces used by other BeeWare tools that can be useful on their own, including: +--- +gutter: Long-form description. diff --git a/content/project/projects/support/python-linux-support/contents+es.lr b/content/project/utilities/python-apple-support/contents+es.lr similarity index 100% rename from content/project/projects/support/python-linux-support/contents+es.lr rename to content/project/utilities/python-apple-support/contents+es.lr diff --git a/content/project/utilities/python-apple-support/contents.lr b/content/project/utilities/python-apple-support/contents.lr new file mode 100644 index 0000000000..ea10598af6 --- /dev/null +++ b/content/project/utilities/python-apple-support/contents.lr @@ -0,0 +1,25 @@ +name: Python Apple Support +--- +languages: py, c +--- +maturity: beta +--- +platforms: macOS, iOS, tvOS, watchOS +--- +project_type: utility +--- +short_description: A meta-package for building a version of Python that can be embedded into a macOS, iOS, tvOS or watchOS project. +--- +incomplete: yes +--- +description: A meta-package for building a version of Python that can be embedded into a macOS, iOS, tvOS or watchOS project. +--- +customlogo: yes +--- +image: python-apple-support.png +--- +github_repo: beeware/Python-Apple-support +--- +important: yes +--- +sort_key: 2 diff --git a/content/project/projects/support/python-apple-support/python-apple-support.png b/content/project/utilities/python-apple-support/python-apple-support.png similarity index 100% rename from content/project/projects/support/python-apple-support/python-apple-support.png rename to content/project/utilities/python-apple-support/python-apple-support.png diff --git a/content/project/projects/bridges/rubicon/contents+es.lr b/content/project/utilities/rubicon/contents+es.lr similarity index 100% rename from content/project/projects/bridges/rubicon/contents+es.lr rename to content/project/utilities/rubicon/contents+es.lr diff --git a/content/project/utilities/rubicon/contents.lr b/content/project/utilities/rubicon/contents.lr new file mode 100644 index 0000000000..1c740150c4 --- /dev/null +++ b/content/project/utilities/rubicon/contents.lr @@ -0,0 +1,49 @@ +name: Rubicon Objective-C +--- +project_type: utility +--- +maturity: production +--- +languages: py, m +--- +platforms: macOS, iOS +--- +short_description: A library for bridging between Python and the Objective-C language runtimes. +--- +description: + +Rubicon Objective-C is a bridge between Objective-C and Python. It enables you to: + +* Use Python to instantiate objects defined in Objective-C, +* Use Python to invoke methods on objects defined in Objective-C, and +* Subclass and extend Objective-C classes in Python. + +It also includes wrappers of the some key data types from the Foundation framework (e.g., `NSString`). + +You can find `rubicon-objc`_ on GitHub. + + +.. _rubicon-objc: https://github.com/beeware/rubicon-objc + +--- +help_required: +--- +pun: + +During the Roman republic, the river Rubicon marked the boundary between the Roman province of Cisalpine Gaul to the north-east and Italy proper (controlled by Rome) to the south. + +In 49BCE, Julius Caesar led a single legion, Legio XIII Gemina, south over the Rubicon from Cisalpine Gaul to Italy to make his way to Rome. In doing so, he (deliberately) broke the law on imperium and made an armed conflict with the Roman Senate inevitable. According to Suetonius, as he crossed the river, Caesar uttered the famous phrase ālea iacta est ("the die has been cast"). + +But if you're going to cross the Rubicon, you're going to need a bridge. +--- +rtfd_name: rubicon-objc +--- +customlogo: yes +--- +image: rubicon.png +--- +github_repo: beeware/rubicon +--- +important: yes +--- +sort_key: 0 diff --git a/content/project/projects/bridges/rubicon/rubicon.png b/content/project/utilities/rubicon/rubicon.png similarity index 100% rename from content/project/projects/bridges/rubicon/rubicon.png rename to content/project/utilities/rubicon/rubicon.png diff --git a/content/project/utilities/travertino/contents.lr b/content/project/utilities/travertino/contents.lr new file mode 100644 index 0000000000..7ee33185ae --- /dev/null +++ b/content/project/utilities/travertino/contents.lr @@ -0,0 +1,43 @@ +name: travertino +--- +project_type: utility +--- +maturity: alpha +--- +languages: py +--- +platforms: independent +--- +short_description: A base library for building layout algorithms +--- +description: + +Travertino is a library describing constants and a base box model that can be +used to define layout algorithms. + +It is used as a foundation for the Pack box model in `Toga +`__, and for `Colosseum +`__. +--- +help_required: +--- +pun: + +Travertine (Travertino in Italian) is a type of limestone that has been used as +a building material for thousands of years. The name derives from the Latin +`tiburtinus`, meaning "of Tibur" - Tibur being a town near Rome that was the +historical source of Travertine. + +Travertine is the building material that was used to build the Colosseum. +--- +incomplete: no +--- +rtfd_name: travertino +--- +customlogo: no +--- +image: travertino.png +--- +github_repo: beeware/travertino +--- +sort_key: 3 diff --git a/content/project/projects/libraries/travertino/travertino.png b/content/project/utilities/travertino/travertino.png similarity index 100% rename from content/project/projects/libraries/travertino/travertino.png rename to content/project/utilities/travertino/travertino.png diff --git a/content/rubicon/contents.lr b/content/rubicon/contents.lr index 18c744147e..47ff36f3ce 100644 --- a/content/rubicon/contents.lr +++ b/content/rubicon/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /rubicon/ ---- -new_path: /project/projects/bridges/rubicon/ +new_path: /project/utilities/rubicon/ --- _discoverable: no diff --git a/content/signup/contents.lr b/content/signup/contents.lr index 498ead5e33..e9607a84fb 100644 --- a/content/signup/contents.lr +++ b/content/signup/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /signup/ ---- new_path: /community/keep-informed/ --- _discoverable: no diff --git a/content/sitemap/contents.lr b/content/sitemap/contents.lr index 032db81f4a..c59e75586f 100644 --- a/content/sitemap/contents.lr +++ b/content/sitemap/contents.lr @@ -1,6 +1,6 @@ _template: sitemap.html --- -summary: Need to find a page? Here's a programatically generated list of all the pages, including how they are nested together! +summary: Need to find a page? Here's a programmatically generated list of all the pages, including how they are nested together! --- title: Sitemap --- diff --git a/content/toga/contents.lr b/content/toga/contents.lr index 9ed70bcb56..f7634a0904 100644 --- a/content/toga/contents.lr +++ b/content/toga/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /toga/ ---- -new_path: /project/projects/libraries/toga/ +new_path: /project/toga/ --- _discoverable: no diff --git a/content/voc/contents.lr b/content/voc/contents.lr index 6f397519cb..438344e85b 100644 --- a/content/voc/contents.lr +++ b/content/voc/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /voc/ ---- new_path: /project/projects/bridges/voc/ --- _discoverable: no diff --git a/content/waggle/contents.lr b/content/waggle/contents.lr index 04e37f0a38..d332eea7c1 100644 --- a/content/waggle/contents.lr +++ b/content/waggle/contents.lr @@ -1,7 +1,5 @@ _model: redirect --- -old_path: /waggle/ ---- new_path: /project/projects/tools/waggle/ --- _discoverable: no diff --git a/databags/labels.ini b/databags/labels.ini index af344008a1..e3b4cd80f2 100644 --- a/databags/labels.ini +++ b/databags/labels.ini @@ -5,11 +5,13 @@ [en] ; Project Type app = Application +application = Application tool = Tool library = Library bridge = Bridge template = Template support = Support +utility = Utility ; Maturity attic = Attic diff --git a/databags/menu.ini b/databags/menu.ini index 3c789a7b9b..ebc7dbf626 100644 --- a/databags/menu.ini +++ b/databags/menu.ini @@ -3,7 +3,7 @@ project = Project news = News community = Community contributing = Contributing -contact = Contact +about = About languages = Languages donate = Donate diff --git a/models/beeware.ini b/models/beeware.ini new file mode 100644 index 0000000000..3d416953b8 --- /dev/null +++ b/models/beeware.ini @@ -0,0 +1,26 @@ +[model] +name = Project type +label = {{ this.title }} +hidden = yes + +[children] +model = project +order_by = sort_key + +[fields.title] +label = Title +type = string + +[fields.short_description] +label = Short description +type = string + +[fields.body] +label = Body +description = reStructuredText +type = rst + +[fields.gutter] +label = Gutter +description = reStructuredText +type = rst \ No newline at end of file diff --git a/models/project-type.ini b/models/project-type.ini index c1136784e4..354b16c150 100644 --- a/models/project-type.ini +++ b/models/project-type.ini @@ -5,21 +5,38 @@ hidden = yes [children] model = project -order_by = maturity, name +order_by = sort_key, name [fields.title] label = Title type = string -[fields.sort_key] -label = Sort order -type = sort_key +[fields.category_type] +label = Category type +type = select +choices = application, utility +choice_labels = Application, Utility +width = 1/4 [fields.short_description] label = Short description type = string -[fields.description] -label = Description +[fields.project_page_description] +label = Project page description +type = string + +[fields.gutter] +label = Gutter description = reStructuredText type = rst + +[fields.hide_from_project] +label = Hide from Project page? +type = boolean +width = 1/4 + +[fields.important] +label = Is this a category featured on the Project page? +type = boolean +width = 1/4 \ No newline at end of file diff --git a/models/project.ini b/models/project.ini index 95fc190d5d..97ec020898 100644 --- a/models/project.ini +++ b/models/project.ini @@ -11,8 +11,8 @@ width = 1/2 [fields.project_type] label = Project type type = select -choices = app, tool, library, bridge, template, support -choice_labels = Application, Tool, Library, Bridge, Template, Support +choices = application, utility +choice_labels = Application, Utility width = 1/4 [fields.image] @@ -83,7 +83,17 @@ label = Is this page incomplete? width = 1/4 type = boolean +[fields.sort_key] +label = Sort order +type = sort_key +width = 1/4 + [fields.showcase] -label = Showcase this project on home page? +label = Showcase this project on home page and Project page? width = 1/4 type = boolean + +[fields.important] +label = Highlight this application/utility on Project page? +width = 1/4 +type = boolean \ No newline at end of file diff --git a/templates/beeware.html b/templates/beeware.html index 33af8e199c..07d0cec931 100644 --- a/templates/beeware.html +++ b/templates/beeware.html @@ -1,19 +1,88 @@ {% extends "page.html" %} +{% from "macros/breadcrumbs.html" import breadcrumbs %} +{% block title %}{{ this.title }}{% endblock %} +{% block preamble %} + +{% endblock %} {% block body %}
-
+
+
+ {{ this.body }} +
{% for child in this.children %} - {% if not child.hide_from_index %} -

{{ child.title }}

-

{{ child.summary }}

- {% endif %} + {% if not (child.important_category or child.hide_from_project) %} +
+ {% if child.image %} + + {% else %} + + {% endif %} +

{{ child.name }}

+ {{ child.short_description }} +
+ {% endif %} + {% endfor %} +
+
+ {% set important_categories = site.query('/', alt=this.alt) %} + {% for important_category in important_categories %} + {% for category in site.query(important_category.path, alt=this.alt).filter((F.category_type == "application").and(F.important == True)) %} +

{{ category.title }}

+
+ {{ category.project_page_description }} +
+ {% endfor %} + {% endfor %} +
+ {% set important_projects = site.query('/project', alt=this.alt) %} + {% for important_project in important_projects %} + {% for project in site.query(important_project.path, alt=this.alt).filter((F.project_type == "application").and(F.important == True)) %} +
+

{{ project.name }} {{ project.name }}

+ {{ project.short_description|safe }} +
+ {% endfor %} + {% endfor %} +
+ ... and others +
+
+ {% set important_categories = site.query('/', alt=this.alt) %} + {% for important_category in important_categories %} + {% for category in site.query(important_category.path, alt=this.alt).filter((F.category_type == "utility").and(F.important == True)) %} +

{{ category.title }}

+
+ {{ category.project_page_description }} +
+ {% endfor %} {% endfor %} +
+ {% set important_projects = site.query('/project', alt=this.alt) %} + {% for important_project in important_projects %} + {% for project in site.query(important_project.path, alt=this.alt).filter((F.project_type == "utility").and(F.important == True)) %} +
+

{{ project.name }} {{ project.name }}

+ {{ project.short_description|safe }} +
+ {% endfor %} + {% endfor %} +
+ ... and others
-
+
+
+
-
-{% endblock %} \ No newline at end of file +
+{% endblock %} diff --git a/templates/home.html b/templates/home.html index f3eed3359c..e78b261619 100644 --- a/templates/home.html +++ b/templates/home.html @@ -119,15 +119,15 @@

{{ event.title }}


{% endif %} -

{{ t_projects }}

- {% set project_types = site.query('/project/projects', alt=this.alt) %} - {% for project_type in project_types %} - {% for project in site.query(project_type.path, alt=this.alt).filter(F.showcase==True) %} +

{{ t_projects }}

+ {% set project_types = site.query('/project', alt=this.alt) %} + {% for project in project_types %} + {% if project.showcase %}

{{ project.name }} {{ project.name }}

{{ project.short_description|safe }}
- {% endfor %} + {% endif %} {% endfor %} {{ this.gutter_bottom }}
@@ -196,15 +196,15 @@

{{ event.title }}


{% endif %} -

{{ t_projects }}

- {% set project_types = site.query('/project/projects', alt=this.alt) %} - {% for project_type in project_types %} - {% for project in site.query(project_type.path, alt=this.alt).filter(F.showcase==True) %} +

{{ t_projects }}

+ {% set project_types = site.query('/project', alt=this.alt) %} + {% for project in project_types %} + {% if project.showcase %}

{{ project.name }} {{ project.name }}

{{ project.short_description|safe }}
- {% endfor %} + {% endif %} {% endfor %} {{ this.gutter_bottom }}
diff --git a/templates/layout.html b/templates/layout.html index 321f7f1009..7d7d0876f3 100644 --- a/templates/layout.html +++ b/templates/layout.html @@ -82,13 +82,13 @@