diff --git a/README.md b/README.md
new file mode 100644
index 0000000..43282da
--- /dev/null
+++ b/README.md
@@ -0,0 +1,77 @@
+# libpldm
+This is a library which deals with the encoding and decoding of PLDM messages.
+It should be possible to use this library by projects other than OpenBMC, and
+hence certain constraints apply to it:
+- keeping it light weight
+- implementation in C
+- minimal dynamic memory allocations
+- endian-safe
+- no OpenBMC specific dependencies
+
+Source files are named according to the PLDM Type, for eg base.[h/c], fru.[h/c],
+etc.
+
+Given a PLDM command "foo", the library will provide the following API:
+For the Requester function:
+```
+encode_foo_req() - encode a foo request
+decode_foo_resp() - decode a response to foo
+```
+For the Responder function:
+```
+decode_foo_req() - decode a foo request
+encode_foo_resp() - encode a response to foo
+```
+The library also provides API to pack and unpack PLDM headers.
+
+## To Build
+Need `meson` and `ninja`. Alternatively, source an OpenBMC ARM/x86 SDK.
+```
+meson builddir && ninja -C builddir
+```
+## To run unit tests
+The simplest way of running the tests is as described by the meson man page:
+```
+meson builddir && meson test -C builddir
+```
+## OEM/vendor-specific functions
+This will support OEM or vendor-specific functions and semantic information.
+Following directory structure has to be used:
+```
+ libpldm
+    |---- include/libpldm
+    |        |---- oem/<oem_name>/libpldm
+    |                    |----<oem based .h files>
+    |---- src
+    |        |---- oem/<oem_name>
+    |                    |----<oem based .c files>
+    |---- tests
+    |        |---- oem/<oem_name>
+    |                    |----<oem based test files>
+
+```
+<oem_name> - This folder must be created with the name of the OEM/vendor
+in lower case.
+
+Header files & source files having the oem functionality for the libpldm library
+should be placed under the respective folder hierarchy as mentioned in the above
+figure. They must be adhering to the rules mentioned under the libpldm section above.
+
+Once the above is done a meson option has to be created in
+`libpldm/meson_options.txt` with its mapped compiler flag to enable conditional
+compilation.
+
+For consistency would recommend using "oem-<oem_name>".
+
+The `libpldm/meson.build` and the corresponding source file(s) will need to
+incorporate the logic of adding its mapped compiler flag to allow conditional
+compilation of the code.
+
+## Requester APIs
+The pldm requester API's are present in `src/requester` folder and they are intended
+to provide API's to interact with the desired underlying transport layer to send/receive
+pldm messages.
+
+**NOTE** : In the current state, the requester API's in the repository only works with
+[specific transport mechanism](https://github.com/openbmc/libmctp) & these are going to
+change in future & probably aren't appropriate to be writing code against.
