diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 9cf362bdfb..39d08d5d4e 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,9 +1,31 @@
## Contribution guidelines
-### Pull requests
+## Pull requests
* When opening a pull request, add a JIRA issue ID to the description.
+## Technology
+
+
+ Do not use Angularjs for new features
+ Here are some issues with Angularjs which make it a much worse choice for future development compared to a TypeScript + React combination:
+ * Lack of TypeScript support - templates can't be typed at all, which is a large part of the code.
+ * Bad performance / hard to optimize, especially compared with React where most of the time implementing `shouldComponentUpdate` is enough.
+ * Templating system is poor, there isn't even an `if-else` statement(only `if`). The existence of the templating system itself is a disadvantage compared to React where you can use the full power of JavaScript for data transformations, caching and all other things you'd do in a "non-template" code.
+
+
+
+ Avoid writing Angularjs code when enhancing existing features
+ Use `reactToAngular1` which enables using React components inside Angularjs templates.
+
+
+## Architecture
+
+
+ Build new features on top of extensions/features API
+ The API allows building new features without having to depend on the messier parts of the old code which can't be refactored at once. On top of that, the core will get smaller and easier to maintain as more features are moved on top of the API. See https://github.com/superdesk/superdesk-core/issues/1585.
+
+
## Testing