diff --git a/content/blog/react-native-intro-dev-meeting.md b/content/blog/react-native-intro-dev-meeting.md new file mode 100644 index 0000000..5709a6f --- /dev/null +++ b/content/blog/react-native-intro-dev-meeting.md @@ -0,0 +1,16 @@ +title: React-Native intro dev meeting +gittime: off +date: 2016-03-16 +template: blog + +Recently, at DabApps, we've been migrating our mobile app workflow over to using [react-native](https://facebook.github.io/react-native/) instead of [Ionic](http://ionicframework.com/), mainly because of its near native performance and cross-platform codebase. For the first few projects, there were only a couple of us that knew how to use React Native effectively, and work around the _qwerks_ it has. With the number of app projects growing, we needed to get more people up to speed with the react native workflow, as quickly as possible. + +The workflow that we needed to adopt to use react native is an odd one. To keep the quality of our code at the highest possible, whilst keeping the codebase as maintainable as possible. The workflow we use was created by 4 of us, through experiences with both work and personal projects using the framework, and it works rather well. The only problem was that only 4 of us actually knew it very well. + +After one of the developers wanted to know our workflow, with a couple of potential app projects on the horizon, I set about creating a talk for our (_usually_) bi-weekly dev meetings. With the aim of trying to get everyone up to speed all in 1 go. + +The slides from my talk are available on my [GitHub]({{ SOCIAL.github.url }}/react-native-intro-dev-meeting) page, and whilst they are primarily relevant to our workflow, I hope they will be able to help anyone else looking to get started with React Native. + +React Native is a tricky platform to get started on, but once you understand the _qwerks_, it truly is the future of cross-platform mobile development! + +[Click here to view the slides](http://realorangeone.github.io/react-native-intro-dev-meeting/) diff --git a/content/pages/homepage.html b/content/pages/homepage.html index aef5f6e..9239252 100644 --- a/content/pages/homepage.html +++ b/content/pages/homepage.html @@ -72,7 +72,7 @@ -
+
{% for project in INDEX_PROJECTS %} @@ -104,9 +104,22 @@
-
+

Blog


+
+
+ {% for article in categories|category_find("blog") %} +
+
+

{{ article.title }}

+

{{ article.summary|raw|limit(30) }}

+
+
+
+ {% endfor %} +
+
View all posts
diff --git a/pelicanconf.py b/pelicanconf.py index 1b8fc38..aa708af 100644 --- a/pelicanconf.py +++ b/pelicanconf.py @@ -77,5 +77,6 @@ import filters JINJA_FILTERS = { "datetime": filters.format_datetime, "raw": filters.html_to_raw, - "category_find": filters.category_find + "category_find": filters.category_find, + "limit": filters.limit } diff --git a/plugins/filters.py b/plugins/filters.py index 90fe26e..1e3e4ec 100644 --- a/plugins/filters.py +++ b/plugins/filters.py @@ -3,7 +3,7 @@ from bs4 import BeautifulSoup def format_datetime(value): - return iso8601.parse_date(str(value)).strftime("%x %-H:%M") + return iso8601.parse_date(str(value)).strftime("%x") def html_to_raw(html): @@ -18,3 +18,9 @@ def category_find(categories, name): if category_name == name: return articles return [] + + +def limit(line, length): + if len(line) <= length: + return line + return " ".join(line.split(" ")[:length]) + '...' diff --git a/theme/templates/blog.html b/theme/templates/blog.html new file mode 100644 index 0000000..f89ab2a --- /dev/null +++ b/theme/templates/blog.html @@ -0,0 +1,22 @@ +{% extends "base.html" %} + +{% block htmltitle %} + {{ article.title }} +{% endblock %} + +{% block content %} +
+
+

{{ article.title }}

+
+
+
+
+
+

+ Published: {{ article.date|datetime }} +

+ {{ article.content }} +
+
+{% endblock %}