<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Javascript-Development on Janik von Rotz</title>
    <link>https://janikvonrotz.ch/categories/javascript-development/</link>
    <description>Recent content in Javascript-Development on Janik von Rotz</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 18 Jan 2022 11:38:00 +0100</lastBuildDate>
    <atom:link href="https://janikvonrotz.ch/categories/javascript-development/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>JavaScript: Get array with unique objects</title>
      <link>https://janikvonrotz.ch/2022/01/18/javascript-get-array-with-unique-objects/</link>
      <pubDate>Tue, 18 Jan 2022 11:38:00 +0100</pubDate>
      <guid>https://janikvonrotz.ch/2022/01/18/javascript-get-array-with-unique-objects/</guid>
      <description>&lt;p&gt;In JavaScript you can use &lt;code&gt;Set&lt;/code&gt; to get an array with unique items. However, this does not work with objects. Converting the object to a string before creating the set is the solution.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apollo GraphQl server and client sorting</title>
      <link>https://janikvonrotz.ch/2020/01/29/apollo-graphql-server-and-client-sorting/</link>
      <pubDate>Wed, 29 Jan 2020 14:05:23 +0100</pubDate>
      <guid>https://janikvonrotz.ch/2020/01/29/apollo-graphql-server-and-client-sorting/</guid>
      <description>&lt;p&gt;GraphQl is not opinionated about sorting and pagination. It is up to you to implement the sorting for your query. I&amp;rsquo;ve seen various approaches doing that, but none seemed elegant. After compiling a few blog posts and tutorials I came up with the following solution.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Build an Apollo Graphql user authentication for your React app - part 3</title>
      <link>https://janikvonrotz.ch/2019/09/26/build-an-apollo-graphql-user-authentication-for-your-react-app-part-3/</link>
      <pubDate>Thu, 26 Sep 2019 10:31:27 +0200</pubDate>
      <guid>https://janikvonrotz.ch/2019/09/26/build-an-apollo-graphql-user-authentication-for-your-react-app-part-3/</guid>
      <description>&lt;p&gt;This is the final post of my GraphQL Auth series. Before reading this post checkout &lt;a href=&#34;https://janikvonrotz.ch/2019/08/27/build-an-apollo-graphql-user-authentication-for-your-react-app-part-1&#34;&gt;post 1&lt;/a&gt; and &lt;a href=&#34;https://janikvonrotz.ch/2019/08/29/build-an-apollo-graphql-user-authentication-for-your-react-app-part-2&#34;&gt;post 2&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;As mentioned in my last post we need to polish our authentication solution. First we wanna ensure that the JWT token expires. Second, I think the &lt;code&gt;isAuthenticated&lt;/code&gt; directive is insufficient for proper permission management on our types, queries and mutations. We need a role based solution. While the first point is simple to implement, the second is more complex and definitely requires walking through the previous posts.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Build an Apollo Graphql user authentication for your React app - part 2</title>
      <link>https://janikvonrotz.ch/2019/08/29/build-an-apollo-graphql-user-authentication-for-your-react-app-part-2/</link>
      <pubDate>Thu, 29 Aug 2019 19:34:07 +0200</pubDate>
      <guid>https://janikvonrotz.ch/2019/08/29/build-an-apollo-graphql-user-authentication-for-your-react-app-part-2/</guid>
      <description>&lt;p&gt;In my &lt;a href=&#34;https://janikvonrotz.ch/2019/08/27/build-an-apollo-graphql-user-authentication-for-your-react-app-part-1&#34;&gt;last post&lt;/a&gt; we built a Graphql API that handles user authentication and authorization. In particular we added a &lt;code&gt;loginUser&lt;/code&gt; query that returns a JWT token. This token can be used to access restricted resources.&#xA;In this post I will show what the implementation looks like on Reacts side.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Build an Apollo Graphql user authentication for your React app - part 1</title>
      <link>https://janikvonrotz.ch/2019/08/27/build-an-apollo-graphql-user-authentication-for-your-react-app-part-1/</link>
      <pubDate>Tue, 27 Aug 2019 18:35:12 +0200</pubDate>
      <guid>https://janikvonrotz.ch/2019/08/27/build-an-apollo-graphql-user-authentication-for-your-react-app-part-1/</guid>
      <description>&lt;p&gt;I am currently building an &lt;a href=&#34;https://www.apollographql.com/docs/apollo-server/&#34;&gt;Apollo Graphql&lt;/a&gt; API and a &lt;a href=&#34;https://reactjs.org/&#34;&gt;React&lt;/a&gt; web application. The application requires a user authentication functionality in order to enforce access restrictions on the Graphql endpoint. Apollo Graphql does not provide an out-of-the-box-solution and therefore I would like to present my solution.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Simple Hugo page search with Lunr.js</title>
      <link>https://janikvonrotz.ch/2019/06/10/2019-06-10-simple-hugo-page-search-with-lunrjs/</link>
      <pubDate>Mon, 10 Jun 2019 12:11:31 +0200</pubDate>
      <guid>https://janikvonrotz.ch/2019/06/10/2019-06-10-simple-hugo-page-search-with-lunrjs/</guid>
      <description>&lt;p&gt;Hugo is static website engine and acutally used to generated this blog post. Due to its static nature, there is now way to provide serverside capablities for dynamic lookups such as used by a search feature. Everything dynamically has to be done client side. In this post I am going to setup a search page for a Hugo site the most simple way.&lt;/p&gt;</description>
    </item>
    <item>
      <title>State of JavaScript 2018</title>
      <link>https://janikvonrotz.ch/2018/11/19/state-of-javascript-2018/</link>
      <pubDate>Mon, 19 Nov 2018 11:16:09 +0100</pubDate>
      <guid>https://janikvonrotz.ch/2018/11/19/state-of-javascript-2018/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://stateofjs.com/&#34;&gt;State of JavaScript 2018&lt;/a&gt; has just been released. It is one of the biggest survey about JavaScript development. If you wanna know what is going on in the confusing world of JS, make sure to pay a visit. They did a great job at visualizing and showcasing the results.&lt;/p&gt;</description>
    </item>
    <item>
      <title>JS snippet: Set tallest height on siblings</title>
      <link>https://janikvonrotz.ch/2017/08/06/js-snippet-set-tallest-height-on-siblings/</link>
      <pubDate>Sun, 06 Aug 2017 20:40:15 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2017/08/06/js-snippet-set-tallest-height-on-siblings/</guid>
      <description>&lt;p&gt;This post is another contribution to &amp;ldquo;I hope that I never have to use jQuery again&amp;rdquo;. The problem solved this time is quite simple. We want to set the same height for a group of divs. So not like this:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://janikvonrotz.ch/wp-content/uploads/2017/07/Not-equal-heights-on-divs.png&#34; alt=&#34;Untitled&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>The most simple access control for your Meteor React app</title>
      <link>https://janikvonrotz.ch/2017/05/12/the-most-simple-access-control-for-your-meteor-react-app/</link>
      <pubDate>Fri, 12 May 2017 09:46:48 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2017/05/12/the-most-simple-access-control-for-your-meteor-react-app/</guid>
      <description>&lt;p&gt;For my last Meteor React app I&amp;rsquo;ve designed the most simple role based access control. The basic idea is that users can have multiple roles and every action possible is only allowed by a specified set of roles. For my Meteor React app the following scenarios were considered:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Debounce a redux dispatch method in a react component</title>
      <link>https://janikvonrotz.ch/2017/04/20/debounce-a-redux-dispatch-method-in-a-react-component/</link>
      <pubDate>Thu, 20 Apr 2017 12:46:18 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2017/04/20/debounce-a-redux-dispatch-method-in-a-react-component/</guid>
      <description>&lt;p&gt;Tightly connected reactivity in a react application has the side effect that it is sometimes necessary to delay the execution of a method. Assume you have a search input field that filters elements while typing, every field input creates a search request. In order to get rid of unnecessary search requests you have to wait until a user has finished typing and then start the search. To make this work without a search button, you have to intercept repeating executions (debounce) of the search method within a specified time frame and delay the execution of the last call.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Meteor project structure</title>
      <link>https://janikvonrotz.ch/2017/03/28/meteor-project-structure/</link>
      <pubDate>Tue, 28 Mar 2017 16:20:06 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2017/03/28/meteor-project-structure/</guid>
      <description>&lt;p&gt;Get the latest version of this specification here: &lt;a href=&#34;https://gist.github.com/d4755eb1b7a9d6b08515408ea6fd69bb&#34;&gt;https://gist.github.com/d4755eb1b7a9d6b08515408ea6fd69bb&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;The Meteor project structure (MPS) is a proposal for a simple file and folder naming specification.&lt;/p&gt;&#xA;&lt;p&gt;There are several basic distinctions when building a Meteor project structure. First there is a &lt;strong&gt;client&lt;/strong&gt;, &lt;strong&gt;server&lt;/strong&gt; and an &lt;strong&gt;imports&lt;/strong&gt; folder. All folders have specific naming rules and differ in their structure.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Deploy your Meteor app with PM2</title>
      <link>https://janikvonrotz.ch/2017/03/14/deploy-your-meteor-app-with-pm2/</link>
      <pubDate>Tue, 14 Mar 2017 14:12:42 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2017/03/14/deploy-your-meteor-app-with-pm2/</guid>
      <description>&lt;p&gt;PM2 is a well-known node process manager. Not so well-known is its deployment feature. With pm2 you can reasonable easy deploy any node application. As Meteor is always a node app at its heart I&amp;rsquo;ve decided to deploy my current Meteor project with PM2.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Make your Redux React app multilingual</title>
      <link>https://janikvonrotz.ch/2017/03/02/make-your-redux-react-app-multilingual/</link>
      <pubDate>Thu, 02 Mar 2017 12:51:10 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2017/03/02/make-your-redux-react-app-multilingual/</guid>
      <description>&lt;p&gt;For my current React app in development I&amp;rsquo;m using Redux to manage the client state. As this is the first time using Redux I&amp;rsquo;m not quite sure what to put in the store yet. But I&amp;rsquo;ve decided to give the multilingual labels and wordings a try. Below you&amp;rsquo;ll find a simple approach on how I made my app multilingual using the Redux client state to store the translated content. I assume you are familiar with Redux and React.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Meteor register LDAP login request handler</title>
      <link>https://janikvonrotz.ch/2017/02/08/meteor-register-ldap-login-request-handler/</link>
      <pubDate>Wed, 08 Feb 2017 20:53:56 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2017/02/08/meteor-register-ldap-login-request-handler/</guid>
      <description>&lt;p&gt;One requirement for my current Meteor project was that a user must login with their ActiveDirectory account. This means that Meteor must be able to authenticate against LDAP. In atmosphere there are already a few packages available which implement and support LDAP authentication. However, they are either outdated or difficult to configure. This is why I&amp;rsquo;ve decided to build my own custom login request handler for Meteor.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Reactive subscriptions with Apollo and React</title>
      <link>https://janikvonrotz.ch/2016/11/28/reactive-subscriptions-with-apollo-and-react/</link>
      <pubDate>Mon, 28 Nov 2016 12:27:08 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/11/28/reactive-subscriptions-with-apollo-and-react/</guid>
      <description>&lt;p&gt;Apollo server and client support real-time subscriptions with web sockets. Compared to Meteor&amp;rsquo;s out of the box real-time communication this is a lot more difficult to set up. With this short tutorial I&amp;rsquo;ll give you an example of how you can get a simple reactive subscriptions into your Apollo/React app. The idea is that you use real-time communication for a specific case only, f.g. sending notifications. We will accomplish this in five steps.&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Install project requirements.&lt;/li&gt;&#xA;&lt;li&gt;Setup the server schema.&lt;/li&gt;&#xA;&lt;li&gt;Add server resolvers.&lt;/li&gt;&#xA;&lt;li&gt;Setup the client subscription.&lt;/li&gt;&#xA;&lt;li&gt;Modify a component to receive data from a subscription.&lt;/li&gt;&#xA;&lt;/ol&gt;</description>
    </item>
    <item>
      <title>Authenticate Meteor accounts with the Apollo GraphQL API</title>
      <link>https://janikvonrotz.ch/2016/11/12/authenticate-meteor-accounts-with-the-apollo-graphql-api/</link>
      <pubDate>Sat, 12 Nov 2016 10:21:20 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/11/12/authenticate-meteor-accounts-with-the-apollo-graphql-api/</guid>
      <description>&lt;p&gt;One of the popular features of Meteor is its accounts package. As you know, it makes it fairly easy to add a user authentication solution to your Meteor app or add support for different oAuth services. With the possibility to integrate an Apollo GraphQL API into your Meteor app this became a bit more difficult. The Apollo stack does not support an out of the box solutions to authenticate users with Meteor accounts. Jonas Helfer, one of the Apollo core devs, proposed &lt;a href=&#34;https://dev-blog.apollodata.com/a-guide-to-authentication-in-graphql-e002a4039d1&#34;&gt;two ways to authenticate users with your app&lt;/a&gt;:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Graphql with Apollo, Meteor and React</title>
      <link>https://janikvonrotz.ch/2016/10/09/graphql-with-apollo-meteor-and-react/</link>
      <pubDate>Sun, 09 Oct 2016 19:39:30 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/10/09/graphql-with-apollo-meteor-and-react/</guid>
      <description>&lt;p&gt;For my last project I had to build a web application to administrate a MongoDB database. Due to using Meteor quite a lot I heard about Graphql and the Apollostack. Graphql, which is a specification done by Facebook engineers, promises to be the better REST API (which I hope it is). I became curious and decided the build the server API with Apollo. First I tried to evade using the Meteor as build system as I don&amp;rsquo;t want to get too accustomed to this full-stack ecosystem. However, building a live-reload server and client build system in ES6 with Node.js, Babel and Webpack was simply too much work compared to building this simple web app. So in result this was my stack:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Node.js dynamic settings</title>
      <link>https://janikvonrotz.ch/2016/08/25/node-js-dynamic-settings/</link>
      <pubDate>Thu, 25 Aug 2016 19:43:31 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/08/25/node-js-dynamic-settings/</guid>
      <description>&lt;p&gt;As I&amp;rsquo;m relatively new to Node I had to wrap my head around a very basic thing. Getting external variables into my app. Loading settings for different environments from config files and via environment variables (for heroku deployment) should supposedly be an easy challenge. However, none of the solutions I&amp;rsquo;ve found were well enough for my scenario:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Store config in json file.&lt;/li&gt;&#xA;&lt;li&gt;Have different configuration files (development, production, &amp;hellip;).&lt;/li&gt;&#xA;&lt;li&gt;Load configs from environment variables.&lt;/li&gt;&#xA;&lt;li&gt;Fallback from environment to config file.&lt;/li&gt;&#xA;&lt;li&gt;App lives in one folder.&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
    </item>
    <item>
      <title>OLMOTO - An app built by beginners</title>
      <link>https://janikvonrotz.ch/2016/08/02/olmoto-an-app-built-by-beginners/</link>
      <pubDate>Tue, 02 Aug 2016 12:30:05 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/08/02/olmoto-an-app-built-by-beginners/</guid>
      <description>&lt;p&gt;One month ago I started teaching a friend the basics of JavaScript with Meteor, Mantra and React.&#xA;Together we&amp;rsquo;ve built an app to create and share events with friends. It was an awesome experience. Yesterday we launched a private version on heroku. For us this was a great accomplishment. I learned a lot from this project and thought about sharing it with world.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://codeberg.org/janikvonrotz/olmoto&#34;&gt;https://codeberg.org/janikvonrotz/olmoto&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Some technical features and challenges we solved:&lt;/p&gt;</description>
    </item>
    <item>
      <title>React image loader with a spinner</title>
      <link>https://janikvonrotz.ch/2016/07/23/react-image-loader-with-a-spinner/</link>
      <pubDate>Sat, 23 Jul 2016 04:19:06 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/07/23/react-image-loader-with-a-spinner/</guid>
      <description>&lt;p&gt;hey there, I&amp;rsquo;ve spent as usual a lot of time with React, Mantra and Meteor. While building a simple app I checked out the new Meteor standard for file handling &lt;a href=&#34;https://github.com/VeliovGroup/Meteor-Files&#34;&gt;Meteor-Files&lt;/a&gt;. It works great, I really recommend this awesome package. But that&amp;rsquo;s not what I want to show you. The app I&amp;rsquo;m working on loads pictures form the dropbox api. Downloading the pictures always takes a while. To make sure the user doesn&amp;rsquo;t get impatient the app is now displaying a spinner when the image is loading. I would to like to show you how I&amp;rsquo;ve built this image loader and spinner component.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Meteor create user with a profile and custom attributes</title>
      <link>https://janikvonrotz.ch/2016/07/11/meteor-create-user-with-a-profile-and-custom-attributes/</link>
      <pubDate>Mon, 11 Jul 2016 20:34:48 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/07/11/meteor-create-user-with-a-profile-and-custom-attributes/</guid>
      <description>&lt;p&gt;For Meteor there are not many options left when choosing a user account package. The built-in option is the only use- and successful solution so far. The package is well documented and works like a charm. However, whenever I set up the account system in Meteor I am confronted with these two scenarios:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;How can I extend the user profile object with data from a registration form? (A user should be able to edit the profile data himself later on.)&lt;/li&gt;&#xA;&lt;li&gt;And how can I add other attributes to the user collection object? (A user should not be able to change a custom attribute himself later on.)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;These are two fundamental obstacles almost every developer faces when setting up the account system. There are a lot of solutions out there on how to do this in Meteor properly, but a lot of them are poorly described and make it difficult the get the right idea of how the account system works. It got even more difficult due  to API changes and Meteor itself that changed a lot over years. Now I would like to give a good example for this two questions.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Meteor productive deployment blank page</title>
      <link>https://janikvonrotz.ch/2016/06/21/meteor-productive-deployment-blank-page/</link>
      <pubDate>Tue, 21 Jun 2016 10:16:07 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/06/21/meteor-productive-deployment-blank-page/</guid>
      <description>&lt;p&gt;First some background. I&amp;rsquo;ve built a Meteor app and decided to deploy it to Heroku. There are many short and simple guides out there on how to do that. As I did so and opened the App for the first on Heroku I simply received a blank page. Where did my javascript code go? Heroku logs didn&amp;rsquo;t tell much.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to publish a react component to the npm directory</title>
      <link>https://janikvonrotz.ch/2016/06/09/how-to-publish-a-react-component-to-the-npm-directory/</link>
      <pubDate>Thu, 09 Jun 2016 12:33:36 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/06/09/how-to-publish-a-react-component-to-the-npm-directory/</guid>
      <description>&lt;p&gt;This time I&amp;rsquo;ll show you how to publish react components to the npm directory. This guide does not cover testing it only shows the easiest way to use your components for different projects as npm dependency.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Meteor and Mantra - Routing redirect</title>
      <link>https://janikvonrotz.ch/2016/05/26/meteor-and-mantra-routing-redirect/</link>
      <pubDate>Thu, 26 May 2016 10:03:22 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/05/26/meteor-and-mantra-routing-redirect/</guid>
      <description>&lt;p&gt;Recently I started using &lt;a href=&#34;&#34;&gt;Mantra&lt;/a&gt; to develop my Meteor apps. As with any other framework You&amp;rsquo;ll find a lot of answers to common questions in a related forum or any other resource. However I couldn&amp;rsquo;t get a good answer on how to implement routing logic properly. The Mantra specs also don&amp;rsquo;t tell much about how to approach it. So here&amp;rsquo;s my solution.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Meteor and React: Markdown editor with draft.js and marked.js</title>
      <link>https://janikvonrotz.ch/2016/04/05/meteor-and-react-markdown-editor-with-draft-js-and-marked-js/</link>
      <pubDate>Tue, 05 Apr 2016 09:15:29 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/04/05/meteor-and-react-markdown-editor-with-draft-js-and-marked-js/</guid>
      <description>&lt;p&gt;Recently I switched my current project from Meteor 1.2 to 1.3. While doing so I reworked the code for my markdown editor. When created the markdown editor in the first place I learned about the necessity of a solid platform to build web editors. So this time I used draft.js as base. Facebook open sourced draft.js a few months ago. They use it almost everywhere on Facebook page, so it should be well-tested.&lt;/p&gt;&#xA;&lt;p&gt;The markdown editor you&amp;rsquo;re going to build has these features:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Instant html preview rendering&lt;/li&gt;&#xA;&lt;li&gt;Support for GitHub flavoured syntax and markdown tables&lt;/li&gt;&#xA;&lt;li&gt;Drag and drop file upload.&lt;/li&gt;&#xA;&lt;li&gt;Copy and paste file upload.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Optionally: File upload with Meteor and FS Collection.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Meteor and React: Fullscreen Viewer Component</title>
      <link>https://janikvonrotz.ch/2016/03/08/meteor-and-react-fullscreen-viewer-component/</link>
      <pubDate>Tue, 08 Mar 2016 15:51:29 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/03/08/meteor-and-react-fullscreen-viewer-component/</guid>
      <description>&lt;p&gt;Another post as result of my Meteor React experience.&#xA;This is a simple approach to build a fullscreen viewer for any React component.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Meteor and React: Bootstrap Modal</title>
      <link>https://janikvonrotz.ch/2016/03/05/meteor-and-react-bootstrap-modal/</link>
      <pubDate>Sat, 05 Mar 2016 12:42:05 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2016/03/05/meteor-and-react-bootstrap-modal/</guid>
      <description>&lt;p&gt;I would like to share my great experience I had with Meteor and React. This time I want to show how I&amp;rsquo;ve built a bootstrap modal component. There are already a lot of solutions out there, but none of them were suitable.&lt;/p&gt;&#xA;&lt;p&gt;Here&amp;rsquo;s how you can get a neat bootstrap modal for your Meteor React project.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Meteor White Paper</title>
      <link>https://janikvonrotz.ch/2015/12/16/meteor-white-paper/</link>
      <pubDate>Wed, 16 Dec 2015 21:05:20 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2015/12/16/meteor-white-paper/</guid>
      <description>&lt;h1 id=&#34;introduction&#34;&gt;Introduction&lt;/h1&gt;&#xA;&lt;p&gt;Today&amp;rsquo;s internet would not work without web applications. Web applications made the web dynamic and extended its targeted audience. The applications made it possible for companies to create new business models and sell their goods and services online. They became popular due to the ubiquity of web browsers, and the convenience of using a web browser as a client (Wikipedia, 2015). Undoubtedly, the technology to build web applications is the cornerstone to enabling the enterprises to keep up with the pace of business. Life cycles of products have become shorter while the demand raised at the same time. Enterprises have to accelerate their application development process to stay competitive in the future.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Install npm package forever</title>
      <link>https://janikvonrotz.ch/2014/03/28/install-npm-package-forever/</link>
      <pubDate>Fri, 28 Mar 2014 12:49:20 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2014/03/28/install-npm-package-forever/</guid>
      <description>&lt;p&gt;&lt;em&gt;This post is part of my &lt;a href=&#34;https://janikvonrotz.ch/your-own-virtual-private-server-hosting-solution/&#34;&gt;Your own Virtual Private Server hosting solution&lt;/a&gt; project.&lt;/em&gt;&lt;br&gt;&#xA;&lt;em&gt;Get the latest version of this article here: &lt;a href=&#34;https://gist.github.com/9347463&#34;&gt;https://gist.github.com/9347463&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h1 id=&#34;introduction&#34;&gt;Introduction&lt;/h1&gt;&#xA;&lt;p&gt;A simple CLI tool for ensuring that a given script runs continuously (i.e. forever).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Install Node</title>
      <link>https://janikvonrotz.ch/2014/03/27/install-node/</link>
      <pubDate>Thu, 27 Mar 2014 16:46:14 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2014/03/27/install-node/</guid>
      <description>&lt;p&gt;&lt;em&gt;This post is part of my &lt;a href=&#34;https://janikvonrotz.ch/your-own-virtual-private-server-hosting-solution/&#34;&gt;Your own Virtual Private Server hosting solution&lt;/a&gt; project.&lt;/em&gt;&lt;br&gt;&#xA;&lt;em&gt;Get the latest version of this article here: &lt;a href=&#34;https://gist.github.com/9346588&#34;&gt;https://gist.github.com/9346588&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h1 id=&#34;introduction&#34;&gt;Introduction&lt;/h1&gt;&#xA;&lt;p&gt;Node.js is a cross-platform runtime environment for server-side and networking applications.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to debug your Node.js application</title>
      <link>https://janikvonrotz.ch/2014/02/21/how-to-debug-your-node-js-application/</link>
      <pubDate>Fri, 21 Feb 2014 14:20:13 +0000</pubDate>
      <guid>https://janikvonrotz.ch/2014/02/21/how-to-debug-your-node-js-application/</guid>
      <description>&lt;p&gt;Recently I&amp;rsquo;ve started developing with Node.js. As a beginner I had to set up an &lt;a href=&#34;https://en.wikipedia.org/wiki/Integrated_Development_Environment&#34;&gt;IDE&lt;/a&gt; which meets my requirements such as debugging code. I&amp;rsquo;ve tried several IDE&amp;rsquo;s such as Microsofts&amp;rsquo;s WebMatrix or Eclipse Node.js extension. But all of them literally sucked, they were are a pain to install or didn&amp;rsquo;t work properly.&lt;/p&gt;&#xA;&lt;p&gt;Luckily I came along this project: &lt;a href=&#34;https://github.com/node-inspector/node-inspector&#34;&gt;&lt;a href=&#34;https://github.com/node-inspector/node-inspector&#34;&gt;https://github.com/node-inspector/node-inspector&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
