# Elio Struyf | GitHub Star | M365 Development, Developer Technologies MVP | Google Developer Expert > Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 762 - [Reuse Page Ribbon Actions (PageStateCommands) Outside the Ribbon · Elio Struyf](https://www.eliostruyf.com/762/): This week I searched for a solution to reuse the page action buttons from the ribbon (Edit Page, Check In, Publish) in a page layout. It was a request of a client that wanted to make the page actions available on the page itself, so that it simplifies the creation/editing/publication process for the users. ## 2010 - [Archive for November 2010 · Elio Struyf](https://www.eliostruyf.com/2010/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2010 · Elio Struyf](https://www.eliostruyf.com/2010/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2010 · Elio Struyf](https://www.eliostruyf.com/2010/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2011 - [Archive for December 2011 · Elio Struyf](https://www.eliostruyf.com/2011/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2011 · Elio Struyf](https://www.eliostruyf.com/2011/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2011 · Elio Struyf](https://www.eliostruyf.com/2011/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2011 · Elio Struyf](https://www.eliostruyf.com/2011/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2011 · Elio Struyf](https://www.eliostruyf.com/2011/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2011 · Elio Struyf](https://www.eliostruyf.com/2011/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2011 · Elio Struyf](https://www.eliostruyf.com/2011/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2011 · Elio Struyf](https://www.eliostruyf.com/2011/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2011 · Elio Struyf](https://www.eliostruyf.com/2011/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2011 · Elio Struyf](https://www.eliostruyf.com/2011/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2011 · Elio Struyf](https://www.eliostruyf.com/2011/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2011 · Elio Struyf](https://www.eliostruyf.com/2011/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2012 - [Archive for December 2012 · Elio Struyf](https://www.eliostruyf.com/2012/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2012 · Elio Struyf](https://www.eliostruyf.com/2012/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2012 · Elio Struyf](https://www.eliostruyf.com/2012/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2012 · Elio Struyf](https://www.eliostruyf.com/2012/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2012 · Elio Struyf](https://www.eliostruyf.com/2012/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2012 · Elio Struyf](https://www.eliostruyf.com/2012/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2012 · Elio Struyf](https://www.eliostruyf.com/2012/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2012 · Elio Struyf](https://www.eliostruyf.com/2012/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2012 · Elio Struyf](https://www.eliostruyf.com/2012/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2012 · Elio Struyf](https://www.eliostruyf.com/2012/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2012 · Elio Struyf](https://www.eliostruyf.com/2012/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2012 · Elio Struyf](https://www.eliostruyf.com/2012/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2013 - [Archive for December 2013 · Elio Struyf](https://www.eliostruyf.com/2013/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2013 · Elio Struyf](https://www.eliostruyf.com/2013/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for October 2013 · Elio Struyf](https://www.eliostruyf.com/2013/10/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2013 · Elio Struyf](https://www.eliostruyf.com/2013/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2013 · Elio Struyf](https://www.eliostruyf.com/2013/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2013 · Elio Struyf](https://www.eliostruyf.com/2013/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2013 · Elio Struyf](https://www.eliostruyf.com/2013/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2013 · Elio Struyf](https://www.eliostruyf.com/2013/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2013 · Elio Struyf](https://www.eliostruyf.com/2013/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2013 · Elio Struyf](https://www.eliostruyf.com/2013/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2013 · Elio Struyf](https://www.eliostruyf.com/2013/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2014 - [Archive for December 2014 · Elio Struyf](https://www.eliostruyf.com/2014/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2014 · Elio Struyf](https://www.eliostruyf.com/2014/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for October 2014 · Elio Struyf](https://www.eliostruyf.com/2014/10/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2014 · Elio Struyf](https://www.eliostruyf.com/2014/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2014 · Elio Struyf](https://www.eliostruyf.com/2014/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2014 · Elio Struyf](https://www.eliostruyf.com/2014/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2014 · Elio Struyf](https://www.eliostruyf.com/2014/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2014 · Elio Struyf](https://www.eliostruyf.com/2014/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2014 · Elio Struyf](https://www.eliostruyf.com/2014/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2014 · Elio Struyf](https://www.eliostruyf.com/2014/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2014 · Elio Struyf](https://www.eliostruyf.com/2014/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2014 · Elio Struyf](https://www.eliostruyf.com/2014/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2014 · Elio Struyf](https://www.eliostruyf.com/2014/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2015 - [Archive for December 2015 · Elio Struyf](https://www.eliostruyf.com/2015/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2015 · Elio Struyf](https://www.eliostruyf.com/2015/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for October 2015 · Elio Struyf](https://www.eliostruyf.com/2015/10/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2015 · Elio Struyf](https://www.eliostruyf.com/2015/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2015 · Elio Struyf](https://www.eliostruyf.com/2015/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2015 · Elio Struyf](https://www.eliostruyf.com/2015/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2015 · Elio Struyf](https://www.eliostruyf.com/2015/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2015 · Elio Struyf](https://www.eliostruyf.com/2015/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2015 · Elio Struyf](https://www.eliostruyf.com/2015/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2015 · Elio Struyf](https://www.eliostruyf.com/2015/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2015 · Elio Struyf](https://www.eliostruyf.com/2015/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2015 · Elio Struyf](https://www.eliostruyf.com/2015/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2015 · Elio Struyf](https://www.eliostruyf.com/2015/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2016 - [Archive for December 2016 · Elio Struyf](https://www.eliostruyf.com/2016/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for October 2016 · Elio Struyf](https://www.eliostruyf.com/2016/10/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2016 · Elio Struyf](https://www.eliostruyf.com/2016/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2016 · Elio Struyf](https://www.eliostruyf.com/2016/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2016 · Elio Struyf](https://www.eliostruyf.com/2016/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2016 · Elio Struyf](https://www.eliostruyf.com/2016/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2016 · Elio Struyf](https://www.eliostruyf.com/2016/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2016 · Elio Struyf](https://www.eliostruyf.com/2016/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2016 · Elio Struyf](https://www.eliostruyf.com/2016/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2016 · Elio Struyf](https://www.eliostruyf.com/2016/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2016 · Elio Struyf](https://www.eliostruyf.com/2016/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2016 · Elio Struyf](https://www.eliostruyf.com/2016/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2017 - [Archive for December 2017 · Elio Struyf](https://www.eliostruyf.com/2017/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2017 · Elio Struyf](https://www.eliostruyf.com/2017/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for October 2017 · Elio Struyf](https://www.eliostruyf.com/2017/10/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2017 · Elio Struyf](https://www.eliostruyf.com/2017/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2017 · Elio Struyf](https://www.eliostruyf.com/2017/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2017 · Elio Struyf](https://www.eliostruyf.com/2017/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2017 · Elio Struyf](https://www.eliostruyf.com/2017/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2017 · Elio Struyf](https://www.eliostruyf.com/2017/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2017 · Elio Struyf](https://www.eliostruyf.com/2017/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2017 · Elio Struyf](https://www.eliostruyf.com/2017/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2017 · Elio Struyf](https://www.eliostruyf.com/2017/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2017 · Elio Struyf](https://www.eliostruyf.com/2017/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2017 · Elio Struyf](https://www.eliostruyf.com/2017/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2018 - [Archive for December 2018 · Elio Struyf](https://www.eliostruyf.com/2018/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2018 · Elio Struyf](https://www.eliostruyf.com/2018/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2018 · Elio Struyf](https://www.eliostruyf.com/2018/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2018 · Elio Struyf](https://www.eliostruyf.com/2018/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2018 · Elio Struyf](https://www.eliostruyf.com/2018/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2018 · Elio Struyf](https://www.eliostruyf.com/2018/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2018 · Elio Struyf](https://www.eliostruyf.com/2018/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2018 · Elio Struyf](https://www.eliostruyf.com/2018/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2018 · Elio Struyf](https://www.eliostruyf.com/2018/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2018 · Elio Struyf](https://www.eliostruyf.com/2018/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2018 · Elio Struyf](https://www.eliostruyf.com/2018/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2018 · Elio Struyf](https://www.eliostruyf.com/2018/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2019 - [Archive for December 2019 · Elio Struyf](https://www.eliostruyf.com/2019/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2019 · Elio Struyf](https://www.eliostruyf.com/2019/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for October 2019 · Elio Struyf](https://www.eliostruyf.com/2019/10/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2019 · Elio Struyf](https://www.eliostruyf.com/2019/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2019 · Elio Struyf](https://www.eliostruyf.com/2019/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2019 · Elio Struyf](https://www.eliostruyf.com/2019/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2019 · Elio Struyf](https://www.eliostruyf.com/2019/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2019 · Elio Struyf](https://www.eliostruyf.com/2019/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2019 · Elio Struyf](https://www.eliostruyf.com/2019/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2019 · Elio Struyf](https://www.eliostruyf.com/2019/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2019 · Elio Struyf](https://www.eliostruyf.com/2019/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2019 · Elio Struyf](https://www.eliostruyf.com/2019/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2019 · Elio Struyf](https://www.eliostruyf.com/2019/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2020 - [Archive for December 2020 · Elio Struyf](https://www.eliostruyf.com/2020/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2020 · Elio Struyf](https://www.eliostruyf.com/2020/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for October 2020 · Elio Struyf](https://www.eliostruyf.com/2020/10/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2020 · Elio Struyf](https://www.eliostruyf.com/2020/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2020 · Elio Struyf](https://www.eliostruyf.com/2020/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2020 · Elio Struyf](https://www.eliostruyf.com/2020/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2020 · Elio Struyf](https://www.eliostruyf.com/2020/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2020 · Elio Struyf](https://www.eliostruyf.com/2020/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2020 · Elio Struyf](https://www.eliostruyf.com/2020/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2020 · Elio Struyf](https://www.eliostruyf.com/2020/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2020 · Elio Struyf](https://www.eliostruyf.com/2020/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2020 · Elio Struyf](https://www.eliostruyf.com/2020/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2020 · Elio Struyf](https://www.eliostruyf.com/2020/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2021 - [Archive for December 2021 · Elio Struyf](https://www.eliostruyf.com/2021/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2021 · Elio Struyf](https://www.eliostruyf.com/2021/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for October 2021 · Elio Struyf](https://www.eliostruyf.com/2021/10/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2021 · Elio Struyf](https://www.eliostruyf.com/2021/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2021 · Elio Struyf](https://www.eliostruyf.com/2021/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2021 · Elio Struyf](https://www.eliostruyf.com/2021/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2021 · Elio Struyf](https://www.eliostruyf.com/2021/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2021 · Elio Struyf](https://www.eliostruyf.com/2021/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2021 · Elio Struyf](https://www.eliostruyf.com/2021/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2021 · Elio Struyf](https://www.eliostruyf.com/2021/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2021 · Elio Struyf](https://www.eliostruyf.com/2021/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2021 · Elio Struyf](https://www.eliostruyf.com/2021/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2021 · Elio Struyf](https://www.eliostruyf.com/2021/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2022 - [Archive for December 2022 · Elio Struyf](https://www.eliostruyf.com/2022/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2022 · Elio Struyf](https://www.eliostruyf.com/2022/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for October 2022 · Elio Struyf](https://www.eliostruyf.com/2022/10/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2022 · Elio Struyf](https://www.eliostruyf.com/2022/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2022 · Elio Struyf](https://www.eliostruyf.com/2022/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2022 · Elio Struyf](https://www.eliostruyf.com/2022/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2022 · Elio Struyf](https://www.eliostruyf.com/2022/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2022 · Elio Struyf](https://www.eliostruyf.com/2022/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2022 · Elio Struyf](https://www.eliostruyf.com/2022/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2022 · Elio Struyf](https://www.eliostruyf.com/2022/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2022 · Elio Struyf](https://www.eliostruyf.com/2022/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2023 - [Archive for December 2023 · Elio Struyf](https://www.eliostruyf.com/2023/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for October 2023 · Elio Struyf](https://www.eliostruyf.com/2023/10/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2023 · Elio Struyf](https://www.eliostruyf.com/2023/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2023 · Elio Struyf](https://www.eliostruyf.com/2023/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2023 · Elio Struyf](https://www.eliostruyf.com/2023/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2023 · Elio Struyf](https://www.eliostruyf.com/2023/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for May 2023 · Elio Struyf](https://www.eliostruyf.com/2023/05/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2023 · Elio Struyf](https://www.eliostruyf.com/2023/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2023 · Elio Struyf](https://www.eliostruyf.com/2023/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2023 · Elio Struyf](https://www.eliostruyf.com/2023/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for January 2023 · Elio Struyf](https://www.eliostruyf.com/2023/01/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2024 - [Archive for December 2024 · Elio Struyf](https://www.eliostruyf.com/2024/12/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for November 2024 · Elio Struyf](https://www.eliostruyf.com/2024/11/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for October 2024 · Elio Struyf](https://www.eliostruyf.com/2024/10/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for September 2024 · Elio Struyf](https://www.eliostruyf.com/2024/09/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for August 2024 · Elio Struyf](https://www.eliostruyf.com/2024/08/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for July 2024 · Elio Struyf](https://www.eliostruyf.com/2024/07/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for June 2024 · Elio Struyf](https://www.eliostruyf.com/2024/06/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for April 2024 · Elio Struyf](https://www.eliostruyf.com/2024/04/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for March 2024 · Elio Struyf](https://www.eliostruyf.com/2024/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2024 · Elio Struyf](https://www.eliostruyf.com/2024/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2024 · Elio Struyf](https://www.eliostruyf.com/2024/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## 2025 - [Archive for March 2025 · Elio Struyf](https://www.eliostruyf.com/2025/03/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for February 2025 · Elio Struyf](https://www.eliostruyf.com/2025/02/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Archive for 2025 · Elio Struyf](https://www.eliostruyf.com/2025/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## Posts - [· Elio Struyf](https://www.eliostruyf.com/posts/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## Tags - [Astro · Elio Struyf](https://www.eliostruyf.com/tags/astro/): Posts tagged with Astro - [Authentication · Elio Struyf](https://www.eliostruyf.com/tags/authentication/): Posts tagged with Authentication - [Azure Static Web Apps · Elio Struyf](https://www.eliostruyf.com/tags/azure-static-web-apps/): Posts tagged with Azure Static Web Apps - [Microsoft Entra ID · Elio Struyf](https://www.eliostruyf.com/tags/microsoft-entra-id/): Posts tagged with Microsoft Entra ID - [Tags · Elio Struyf](https://www.eliostruyf.com/tags/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Azure Functions · Elio Struyf](https://www.eliostruyf.com/tags/azure-functions/): Posts tagged with Azure Functions - [Deployment · Elio Struyf](https://www.eliostruyf.com/tags/deployment/): Posts tagged with Deployment - [GitHub Actions · Elio Struyf](https://www.eliostruyf.com/tags/github-actions/): Posts tagged with GitHub Actions - [Serverless · Elio Struyf](https://www.eliostruyf.com/tags/serverless/): Posts tagged with Serverless - [Azure · Elio Struyf](https://www.eliostruyf.com/tags/azure/): Posts tagged with Azure - [SharePoint Online · Elio Struyf](https://www.eliostruyf.com/tags/sharepoint-online/): Posts tagged with SharePoint Online - [Socket.IO · Elio Struyf](https://www.eliostruyf.com/tags/socket.io/): Posts tagged with Socket.IO - [SPFx · Elio Struyf](https://www.eliostruyf.com/tags/spfx/): Posts tagged with SPFx - [WebSocket · Elio Struyf](https://www.eliostruyf.com/tags/websocket/): Posts tagged with WebSocket - [Best Practices · Elio Struyf](https://www.eliostruyf.com/tags/best-practices/): Posts tagged with Best Practices - [Coding Demos · Elio Struyf](https://www.eliostruyf.com/tags/coding-demos/): Posts tagged with Coding Demos - [Productivity · Elio Struyf](https://www.eliostruyf.com/tags/productivity/): Posts tagged with Productivity - [Visual Studio Code · Elio Struyf](https://www.eliostruyf.com/tags/visual-studio-code/): Posts tagged with Visual Studio Code - [VSCode · Elio Struyf](https://www.eliostruyf.com/tags/vscode/): Posts tagged with VSCode - [Personal · Elio Struyf](https://www.eliostruyf.com/tags/personal/): Posts tagged with Personal - [Recap · Elio Struyf](https://www.eliostruyf.com/tags/recap/): Posts tagged with Recap - [API · Elio Struyf](https://www.eliostruyf.com/tags/api/): Posts tagged with API - [Connectors · Elio Struyf](https://www.eliostruyf.com/tags/connectors/): Posts tagged with Connectors - [Mocking · Elio Struyf](https://www.eliostruyf.com/tags/mocking/): Posts tagged with Mocking - [Playwright · Elio Struyf](https://www.eliostruyf.com/tags/playwright/): Posts tagged with Playwright - [PowerApps · Elio Struyf](https://www.eliostruyf.com/tags/powerapps/): Posts tagged with PowerApps - [Testing · Elio Struyf](https://www.eliostruyf.com/tags/testing/): Posts tagged with Testing - [E2E · Elio Struyf](https://www.eliostruyf.com/tags/e2e/): Posts tagged with E2E - [MFA · Elio Struyf](https://www.eliostruyf.com/tags/mfa/): Posts tagged with MFA - [CI/CD · Elio Struyf](https://www.eliostruyf.com/tags/ci/cd/): Posts tagged with CI/CD - [Node.js · Elio Struyf](https://www.eliostruyf.com/tags/node.js/): Posts tagged with Node.js - [DevOps · Elio Struyf](https://www.eliostruyf.com/tags/devops/): Posts tagged with DevOps - [Cloudflare · Elio Struyf](https://www.eliostruyf.com/tags/cloudflare/): Posts tagged with Cloudflare - [DNS · Elio Struyf](https://www.eliostruyf.com/tags/dns/): Posts tagged with DNS - [Netlify · Elio Struyf](https://www.eliostruyf.com/tags/netlify/): Posts tagged with Netlify - [Next.js · Elio Struyf](https://www.eliostruyf.com/tags/next.js/): Posts tagged with Next.js - [Azure DevOps · Elio Struyf](https://www.eliostruyf.com/tags/azure-devops/): Posts tagged with Azure DevOps - [JavaScript · Elio Struyf](https://www.eliostruyf.com/tags/javascript/): Posts tagged with JavaScript - [Automation · Elio Struyf](https://www.eliostruyf.com/tags/automation/): Posts tagged with Automation - [M365 · Elio Struyf](https://www.eliostruyf.com/tags/m365/): Posts tagged with M365 - [Development · Elio Struyf](https://www.eliostruyf.com/tags/development/): Posts tagged with Development - [GitHub · Elio Struyf](https://www.eliostruyf.com/tags/github/): Posts tagged with GitHub - [Microsoft Teams · Elio Struyf](https://www.eliostruyf.com/tags/microsoft-teams/): Posts tagged with Microsoft Teams - [GitHub Copilot · Elio Struyf](https://www.eliostruyf.com/tags/github-copilot/): Posts tagged with GitHub Copilot - [Documentation · Elio Struyf](https://www.eliostruyf.com/tags/documentation/): Posts tagged with Documentation - [Extensions · Elio Struyf](https://www.eliostruyf.com/tags/extensions/): Posts tagged with Extensions - [Git · Elio Struyf](https://www.eliostruyf.com/tags/git/): Posts tagged with Git - [Codespaces · Elio Struyf](https://www.eliostruyf.com/tags/codespaces/): Posts tagged with Codespaces - [Demo Time · Elio Struyf](https://www.eliostruyf.com/tags/demo-time/): Posts tagged with Demo Time - [Live Coding · Elio Struyf](https://www.eliostruyf.com/tags/live-coding/): Posts tagged with Live Coding - [Presentation · Elio Struyf](https://www.eliostruyf.com/tags/presentation/): Posts tagged with Presentation - [Slidev · Elio Struyf](https://www.eliostruyf.com/tags/slidev/): Posts tagged with Slidev - [Entra · Elio Struyf](https://www.eliostruyf.com/tags/entra/): Posts tagged with Entra - [SharePoint · Elio Struyf](https://www.eliostruyf.com/tags/sharepoint/): Posts tagged with SharePoint - [Dev Proxy · Elio Struyf](https://www.eliostruyf.com/tags/dev-proxy/): Posts tagged with Dev Proxy - [Microsoft · Elio Struyf](https://www.eliostruyf.com/tags/microsoft/): Posts tagged with Microsoft - [Plugins · Elio Struyf](https://www.eliostruyf.com/tags/plugins/): Posts tagged with Plugins - [Caching · Elio Struyf](https://www.eliostruyf.com/tags/caching/): Posts tagged with Caching - [Devhack · Elio Struyf](https://www.eliostruyf.com/tags/devhack/): Posts tagged with Devhack - [Microsoft 365 · Elio Struyf](https://www.eliostruyf.com/tags/microsoft-365/): Posts tagged with Microsoft 365 - [TypeScript · Elio Struyf](https://www.eliostruyf.com/tags/typescript/): Posts tagged with TypeScript - [Marketplace · Elio Struyf](https://www.eliostruyf.com/tags/marketplace/): Posts tagged with Marketplace - [Support · Elio Struyf](https://www.eliostruyf.com/tags/support/): Posts tagged with Support - [.NET · Elio Struyf](https://www.eliostruyf.com/tags/.net/): Posts tagged with .NET - [MacOS · Elio Struyf](https://www.eliostruyf.com/tags/macos/): Posts tagged with MacOS - [Browsers · Elio Struyf](https://www.eliostruyf.com/tags/browsers/): Posts tagged with Browsers - [Cookies · Elio Struyf](https://www.eliostruyf.com/tags/cookies/): Posts tagged with Cookies - [Troubleshooting · Elio Struyf](https://www.eliostruyf.com/tags/troubleshooting/): Posts tagged with Troubleshooting - [Security · Elio Struyf](https://www.eliostruyf.com/tags/security/): Posts tagged with Security - [Webhook · Elio Struyf](https://www.eliostruyf.com/tags/webhook/): Posts tagged with Webhook - [Bundling · Elio Struyf](https://www.eliostruyf.com/tags/bundling/): Posts tagged with Bundling - [Vite · Elio Struyf](https://www.eliostruyf.com/tags/vite/): Posts tagged with Vite - [Icons · Elio Struyf](https://www.eliostruyf.com/tags/icons/): Posts tagged with Icons - [Multilingual · Elio Struyf](https://www.eliostruyf.com/tags/multilingual/): Posts tagged with Multilingual - [Theming · Elio Struyf](https://www.eliostruyf.com/tags/theming/): Posts tagged with Theming - [Actions · Elio Struyf](https://www.eliostruyf.com/tags/actions/): Posts tagged with Actions - [Settings · Elio Struyf](https://www.eliostruyf.com/tags/settings/): Posts tagged with Settings - [Markdown · Elio Struyf](https://www.eliostruyf.com/tags/markdown/): Posts tagged with Markdown - [Optimization · Elio Struyf](https://www.eliostruyf.com/tags/optimization/): Posts tagged with Optimization - [Performance · Elio Struyf](https://www.eliostruyf.com/tags/performance/): Posts tagged with Performance - [React · Elio Struyf](https://www.eliostruyf.com/tags/react/): Posts tagged with React - [Localization · Elio Struyf](https://www.eliostruyf.com/tags/localization/): Posts tagged with Localization - [Permissions · Elio Struyf](https://www.eliostruyf.com/tags/permissions/): Posts tagged with Permissions - [Service Principal · Elio Struyf](https://www.eliostruyf.com/tags/service-principal/): Posts tagged with Service Principal - [Career · Elio Struyf](https://www.eliostruyf.com/tags/career/): Posts tagged with Career - [Assets · Elio Struyf](https://www.eliostruyf.com/tags/assets/): Posts tagged with Assets - [Content Management · Elio Struyf](https://www.eliostruyf.com/tags/content-management/): Posts tagged with Content Management - [Hugo · Elio Struyf](https://www.eliostruyf.com/tags/hugo/): Posts tagged with Hugo - [Submodule · Elio Struyf](https://www.eliostruyf.com/tags/submodule/): Posts tagged with Submodule - [AI · Elio Struyf](https://www.eliostruyf.com/tags/ai/): Posts tagged with AI - [OpenAI · Elio Struyf](https://www.eliostruyf.com/tags/openai/): Posts tagged with OpenAI - [Hack · Elio Struyf](https://www.eliostruyf.com/tags/hack/): Posts tagged with Hack - [Framework · Elio Struyf](https://www.eliostruyf.com/tags/framework/): Posts tagged with Framework - [Static Site · Elio Struyf](https://www.eliostruyf.com/tags/static-site/): Posts tagged with Static Site - [Apple · Elio Struyf](https://www.eliostruyf.com/tags/apple/): Posts tagged with Apple - [MacBook · Elio Struyf](https://www.eliostruyf.com/tags/macbook/): Posts tagged with MacBook - [MacBook-Air · Elio Struyf](https://www.eliostruyf.com/tags/macbook-air/): Posts tagged with MacBook-Air - [Review · Elio Struyf](https://www.eliostruyf.com/tags/review/): Posts tagged with Review - [Speaking · Elio Struyf](https://www.eliostruyf.com/tags/speaking/): Posts tagged with Speaking - [Gitpod · Elio Struyf](https://www.eliostruyf.com/tags/gitpod/): Posts tagged with Gitpod - [GitHub Discussions · Elio Struyf](https://www.eliostruyf.com/tags/github-discussions/): Posts tagged with GitHub Discussions - [Migration · Elio Struyf](https://www.eliostruyf.com/tags/migration/): Posts tagged with Migration - [GraphQL · Elio Struyf](https://www.eliostruyf.com/tags/graphql/): Posts tagged with GraphQL - [Firewall · Elio Struyf](https://www.eliostruyf.com/tags/firewall/): Posts tagged with Firewall - [Front Door · Elio Struyf](https://www.eliostruyf.com/tags/front-door/): Posts tagged with Front Door - [WAF · Elio Struyf](https://www.eliostruyf.com/tags/waf/): Posts tagged with WAF - [Car · Elio Struyf](https://www.eliostruyf.com/tags/car/): Posts tagged with Car - [Mercedes-Benz · Elio Struyf](https://www.eliostruyf.com/tags/mercedes-benz/): Posts tagged with Mercedes-Benz - [Tesla · Elio Struyf](https://www.eliostruyf.com/tags/tesla/): Posts tagged with Tesla - [Webview · Elio Struyf](https://www.eliostruyf.com/tags/webview/): Posts tagged with Webview - [Auth0 · Elio Struyf](https://www.eliostruyf.com/tags/auth0/): Posts tagged with Auth0 - [OAuth · Elio Struyf](https://www.eliostruyf.com/tags/oauth/): Posts tagged with OAuth - [Azure AD · Elio Struyf](https://www.eliostruyf.com/tags/azure-ad/): Posts tagged with Azure AD - [Storage · Elio Struyf](https://www.eliostruyf.com/tags/storage/): Posts tagged with Storage - [Styling · Elio Struyf](https://www.eliostruyf.com/tags/styling/): Posts tagged with Styling - [Theme · Elio Struyf](https://www.eliostruyf.com/tags/theme/): Posts tagged with Theme - [Blog · Elio Struyf](https://www.eliostruyf.com/tags/blog/): Posts tagged with Blog - [Jamstack · Elio Struyf](https://www.eliostruyf.com/tags/jamstack/): Posts tagged with Jamstack - [CMS · Elio Struyf](https://www.eliostruyf.com/tags/cms/): Posts tagged with CMS - [Front Matter · Elio Struyf](https://www.eliostruyf.com/tags/front-matter/): Posts tagged with Front Matter - [Treadmill · Elio Struyf](https://www.eliostruyf.com/tags/treadmill/): Posts tagged with Treadmill - [Walking · Elio Struyf](https://www.eliostruyf.com/tags/walking/): Posts tagged with Walking - [Wfh · Elio Struyf](https://www.eliostruyf.com/tags/wfh/): Posts tagged with Wfh - [Algolia · Elio Struyf](https://www.eliostruyf.com/tags/algolia/): Posts tagged with Algolia - [Search · Elio Struyf](https://www.eliostruyf.com/tags/search/): Posts tagged with Search - [SharePoint Framework · Elio Struyf](https://www.eliostruyf.com/tags/sharepoint-framework/): Posts tagged with SharePoint Framework - [Viva · Elio Struyf](https://www.eliostruyf.com/tags/viva/): Posts tagged with Viva - [Viva Connections · Elio Struyf](https://www.eliostruyf.com/tags/viva-connections/): Posts tagged with Viva Connections - [Open Graph · Elio Struyf](https://www.eliostruyf.com/tags/open-graph/): Posts tagged with Open Graph - [Homebrew · Elio Struyf](https://www.eliostruyf.com/tags/homebrew/): Posts tagged with Homebrew - [Linux · Elio Struyf](https://www.eliostruyf.com/tags/linux/): Posts tagged with Linux - [Windows · Elio Struyf](https://www.eliostruyf.com/tags/windows/): Posts tagged with Windows - [WSL · Elio Struyf](https://www.eliostruyf.com/tags/wsl/): Posts tagged with WSL - [Azure Web PubSub · Elio Struyf](https://www.eliostruyf.com/tags/azure-web-pubsub/): Posts tagged with Azure Web PubSub - [WebSockets · Elio Struyf](https://www.eliostruyf.com/tags/websockets/): Posts tagged with WebSockets - [PWA · Elio Struyf](https://www.eliostruyf.com/tags/pwa/): Posts tagged with PWA - [Microsoft Graph · Elio Struyf](https://www.eliostruyf.com/tags/microsoft-graph/): Posts tagged with Microsoft Graph - [Sharing · Elio Struyf](https://www.eliostruyf.com/tags/sharing/): Posts tagged with Sharing - [Startup · Elio Struyf](https://www.eliostruyf.com/tags/startup/): Posts tagged with Startup - [Vercel · Elio Struyf](https://www.eliostruyf.com/tags/vercel/): Posts tagged with Vercel - [Application · Elio Struyf](https://www.eliostruyf.com/tags/application/): Posts tagged with Application - [Raycast · Elio Struyf](https://www.eliostruyf.com/tags/raycast/): Posts tagged with Raycast - [Microsoft Graph Toolkit · Elio Struyf](https://www.eliostruyf.com/tags/microsoft-graph-toolkit/): Posts tagged with Microsoft Graph Toolkit - [Busy Light · Elio Struyf](https://www.eliostruyf.com/tags/busy-light/): Posts tagged with Busy Light - [Slack · Elio Struyf](https://www.eliostruyf.com/tags/slack/): Posts tagged with Slack - [Comments · Elio Struyf](https://www.eliostruyf.com/tags/comments/): Posts tagged with Comments - [Azure Storage · Elio Struyf](https://www.eliostruyf.com/tags/azure-storage/): Posts tagged with Azure Storage - [CDN · Elio Struyf](https://www.eliostruyf.com/tags/cdn/): Posts tagged with CDN - [Cors · Elio Struyf](https://www.eliostruyf.com/tags/cors/): Posts tagged with Cors - [Hosting · Elio Struyf](https://www.eliostruyf.com/tags/hosting/): Posts tagged with Hosting - [Application Customizer · Elio Struyf](https://www.eliostruyf.com/tags/application-customizer/): Posts tagged with Application Customizer - [Conference · Elio Struyf](https://www.eliostruyf.com/tags/conference/): Posts tagged with Conference - [Tips · Elio Struyf](https://www.eliostruyf.com/tags/tips/): Posts tagged with Tips - [WebDev · Elio Struyf](https://www.eliostruyf.com/tags/webdev/): Posts tagged with WebDev - [Analytics · Elio Struyf](https://www.eliostruyf.com/tags/analytics/): Posts tagged with Analytics - [Usage · Elio Struyf](https://www.eliostruyf.com/tags/usage/): Posts tagged with Usage - [Visitors · Elio Struyf](https://www.eliostruyf.com/tags/visitors/): Posts tagged with Visitors - [Community · Elio Struyf](https://www.eliostruyf.com/tags/community/): Posts tagged with Community - [AzureFunctions · Elio Struyf](https://www.eliostruyf.com/tags/azurefunctions/): Posts tagged with AzureFunctions - [OnlineShop · Elio Struyf](https://www.eliostruyf.com/tags/onlineshop/): Posts tagged with OnlineShop - [PowerAutomate · Elio Struyf](https://www.eliostruyf.com/tags/powerautomate/): Posts tagged with PowerAutomate - [PowerPlatform · Elio Struyf](https://www.eliostruyf.com/tags/powerplatform/): Posts tagged with PowerPlatform - [PYOD · Elio Struyf](https://www.eliostruyf.com/tags/pyod/): Posts tagged with PYOD - [Cypress · Elio Struyf](https://www.eliostruyf.com/tags/cypress/): Posts tagged with Cypress - [PnP · Elio Struyf](https://www.eliostruyf.com/tags/pnp/): Posts tagged with PnP - [UI Tests · Elio Struyf](https://www.eliostruyf.com/tags/ui-tests/): Posts tagged with UI Tests - [CosmosDB · Elio Struyf](https://www.eliostruyf.com/tags/cosmosdb/): Posts tagged with CosmosDB - [Hardware · Elio Struyf](https://www.eliostruyf.com/tags/hardware/): Posts tagged with Hardware - [Office · Elio Struyf](https://www.eliostruyf.com/tags/office/): Posts tagged with Office - [Setup · Elio Struyf](https://www.eliostruyf.com/tags/setup/): Posts tagged with Setup - [Headset · Elio Struyf](https://www.eliostruyf.com/tags/headset/): Posts tagged with Headset - [Jabra · Elio Struyf](https://www.eliostruyf.com/tags/jabra/): Posts tagged with Jabra - [Elgato · Elio Struyf](https://www.eliostruyf.com/tags/elgato/): Posts tagged with Elgato - [Stream Deck · Elio Struyf](https://www.eliostruyf.com/tags/stream-deck/): Posts tagged with Stream Deck - [Alexa · Elio Struyf](https://www.eliostruyf.com/tags/alexa/): Posts tagged with Alexa - [Home Automation · Elio Struyf](https://www.eliostruyf.com/tags/home-automation/): Posts tagged with Home Automation - [Sonos · Elio Struyf](https://www.eliostruyf.com/tags/sonos/): Posts tagged with Sonos - [Unit Tests · Elio Struyf](https://www.eliostruyf.com/tags/unit-tests/): Posts tagged with Unit Tests - [Solution · Elio Struyf](https://www.eliostruyf.com/tags/solution/): Posts tagged with Solution - [Language · Elio Struyf](https://www.eliostruyf.com/tags/language/): Posts tagged with Language - [Modern Sites · Elio Struyf](https://www.eliostruyf.com/tags/modern-sites/): Posts tagged with Modern Sites - [Web Part · Elio Struyf](https://www.eliostruyf.com/tags/web-part/): Posts tagged with Web Part - [Navigation · Elio Struyf](https://www.eliostruyf.com/tags/navigation/): Posts tagged with Navigation - [Builds · Elio Struyf](https://www.eliostruyf.com/tags/builds/): Posts tagged with Builds - [Unique ID · Elio Struyf](https://www.eliostruyf.com/tags/unique-id/): Posts tagged with Unique ID - [HubSite · Elio Struyf](https://www.eliostruyf.com/tags/hubsite/): Posts tagged with HubSite - [Translations · Elio Struyf](https://www.eliostruyf.com/tags/translations/): Posts tagged with Translations - [Debugging · Elio Struyf](https://www.eliostruyf.com/tags/debugging/): Posts tagged with Debugging - [Gulp · Elio Struyf](https://www.eliostruyf.com/tags/gulp/): Posts tagged with Gulp - [Tasks · Elio Struyf](https://www.eliostruyf.com/tags/tasks/): Posts tagged with Tasks - [Puppeteer · Elio Struyf](https://www.eliostruyf.com/tags/puppeteer/): Posts tagged with Puppeteer - [UI · Elio Struyf](https://www.eliostruyf.com/tags/ui/): Posts tagged with UI - [MkDocs · Elio Struyf](https://www.eliostruyf.com/tags/mkdocs/): Posts tagged with MkDocs - [Visual Studio Team Services · Elio Struyf](https://www.eliostruyf.com/tags/visual-studio-team-services/): Posts tagged with Visual Studio Team Services - [Components · Elio Struyf](https://www.eliostruyf.com/tags/components/): Posts tagged with Components - [Office 365 CLI · Elio Struyf](https://www.eliostruyf.com/tags/office-365-cli/): Posts tagged with Office 365 CLI - [Microsoft Edge · Elio Struyf](https://www.eliostruyf.com/tags/microsoft-edge/): Posts tagged with Microsoft Edge - [Likes · Elio Struyf](https://www.eliostruyf.com/tags/likes/): Posts tagged with Likes - [REST · Elio Struyf](https://www.eliostruyf.com/tags/rest/): Posts tagged with REST - [Dependencies · Elio Struyf](https://www.eliostruyf.com/tags/dependencies/): Posts tagged with Dependencies - [Metadata · Elio Struyf](https://www.eliostruyf.com/tags/metadata/): Posts tagged with Metadata - [Mocks · Elio Struyf](https://www.eliostruyf.com/tags/mocks/): Posts tagged with Mocks - [Services · Elio Struyf](https://www.eliostruyf.com/tags/services/): Posts tagged with Services - [Code Coverage · Elio Struyf](https://www.eliostruyf.com/tags/code-coverage/): Posts tagged with Code Coverage - [Fields · Elio Struyf](https://www.eliostruyf.com/tags/fields/): Posts tagged with Fields - [Property Pane · Elio Struyf](https://www.eliostruyf.com/tags/property-pane/): Posts tagged with Property Pane - [VSTS · Elio Struyf](https://www.eliostruyf.com/tags/vsts/): Posts tagged with VSTS - [Breadcrumb · Elio Struyf](https://www.eliostruyf.com/tags/breadcrumb/): Posts tagged with Breadcrumb - [ListView Command Set · Elio Struyf](https://www.eliostruyf.com/tags/listview-command-set/): Posts tagged with ListView Command Set - [Functions · Elio Struyf](https://www.eliostruyf.com/tags/functions/): Posts tagged with Functions - [Configuration · Elio Struyf](https://www.eliostruyf.com/tags/configuration/): Posts tagged with Configuration - [App Services · Elio Struyf](https://www.eliostruyf.com/tags/app-services/): Posts tagged with App Services - [Web API · Elio Struyf](https://www.eliostruyf.com/tags/web-api/): Posts tagged with Web API - [Web App · Elio Struyf](https://www.eliostruyf.com/tags/web-app/): Posts tagged with Web App - [Logic Apps · Elio Struyf](https://www.eliostruyf.com/tags/logic-apps/): Posts tagged with Logic Apps - [Office 365 Groups · Elio Struyf](https://www.eliostruyf.com/tags/office-365-groups/): Posts tagged with Office 365 Groups - [Display Templates · Elio Struyf](https://www.eliostruyf.com/tags/display-templates/): Posts tagged with Display Templates - [Office 365 Public CDN · Elio Struyf](https://www.eliostruyf.com/tags/office-365-public-cdn/): Posts tagged with Office 365 Public CDN - [Outlook · Elio Struyf](https://www.eliostruyf.com/tags/outlook/): Posts tagged with Outlook - [Outlook Module · Elio Struyf](https://www.eliostruyf.com/tags/outlook-module/): Posts tagged with Outlook Module - [Guest Users · Elio Struyf](https://www.eliostruyf.com/tags/guest-users/): Posts tagged with Guest Users - [Job · Elio Struyf](https://www.eliostruyf.com/tags/job/): Posts tagged with Job - [External Users · Elio Struyf](https://www.eliostruyf.com/tags/external-users/): Posts tagged with External Users - [Android · Elio Struyf](https://www.eliostruyf.com/tags/android/): Posts tagged with Android - [Apps · Elio Struyf](https://www.eliostruyf.com/tags/apps/): Posts tagged with Apps - [IOS · Elio Struyf](https://www.eliostruyf.com/tags/ios/): Posts tagged with IOS - [Office 365 · Elio Struyf](https://www.eliostruyf.com/tags/office-365/): Posts tagged with Office 365 - [Team News · Elio Struyf](https://www.eliostruyf.com/tags/team-news/): Posts tagged with Team News - [NPM · Elio Struyf](https://www.eliostruyf.com/tags/npm/): Posts tagged with NPM - [Webpack · Elio Struyf](https://www.eliostruyf.com/tags/webpack/): Posts tagged with Webpack - [Database · Elio Struyf](https://www.eliostruyf.com/tags/database/): Posts tagged with Database - [MySQL · Elio Struyf](https://www.eliostruyf.com/tags/mysql/): Posts tagged with MySQL - [Yeoman · Elio Struyf](https://www.eliostruyf.com/tags/yeoman/): Posts tagged with Yeoman - [Synonyms · Elio Struyf](https://www.eliostruyf.com/tags/synonyms/): Posts tagged with Synonyms - [Add-In; Office; Outlook · Elio Struyf](https://www.eliostruyf.com/tags/add-in-office-outlook/): Posts tagged with Add-In; Office; Outlook - [Compose Form · Elio Struyf](https://www.eliostruyf.com/tags/compose-form/): Posts tagged with Compose Form - [Task Pane · Elio Struyf](https://www.eliostruyf.com/tags/task-pane/): Posts tagged with Task Pane - [SharePoint Saturday · Elio Struyf](https://www.eliostruyf.com/tags/sharepoint-saturday/): Posts tagged with SharePoint Saturday - [SPSBE · Elio Struyf](https://www.eliostruyf.com/tags/spsbe/): Posts tagged with SPSBE - [SPC Adriatics · Elio Struyf](https://www.eliostruyf.com/tags/spc-adriatics/): Posts tagged with SPC Adriatics - [SPSParis · Elio Struyf](https://www.eliostruyf.com/tags/spsparis/): Posts tagged with SPSParis - [SPSSTHLM · Elio Struyf](https://www.eliostruyf.com/tags/spssthlm/): Posts tagged with SPSSTHLM - [Branding · Elio Struyf](https://www.eliostruyf.com/tags/branding/): Posts tagged with Branding - [UI Fabric · Elio Struyf](https://www.eliostruyf.com/tags/ui-fabric/): Posts tagged with UI Fabric - [Mail · Elio Struyf](https://www.eliostruyf.com/tags/mail/): Posts tagged with Mail - [Hybrid · Elio Struyf](https://www.eliostruyf.com/tags/hybrid/): Posts tagged with Hybrid - [Add-In · Elio Struyf](https://www.eliostruyf.com/tags/add-in/): Posts tagged with Add-In - [Display Template · Elio Struyf](https://www.eliostruyf.com/tags/display-template/): Posts tagged with Display Template - [Refiners · Elio Struyf](https://www.eliostruyf.com/tags/refiners/): Posts tagged with Refiners - [Office 365 Dev · Elio Struyf](https://www.eliostruyf.com/tags/office-365-dev/): Posts tagged with Office 365 Dev - [Unified API · Elio Struyf](https://www.eliostruyf.com/tags/unified-api/): Posts tagged with Unified API - [Graph · Elio Struyf](https://www.eliostruyf.com/tags/graph/): Posts tagged with Graph - [People Results · Elio Struyf](https://www.eliostruyf.com/tags/people-results/): Posts tagged with People Results - [SPSMUC · Elio Struyf](https://www.eliostruyf.com/tags/spsmuc/): Posts tagged with SPSMUC - [SPSOslo · Elio Struyf](https://www.eliostruyf.com/tags/spsoslo/): Posts tagged with SPSOslo - [SPSBCN · Elio Struyf](https://www.eliostruyf.com/tags/spsbcn/): Posts tagged with SPSBCN - [SPSLondon · Elio Struyf](https://www.eliostruyf.com/tags/spslondon/): Posts tagged with SPSLondon - [Search Center · Elio Struyf](https://www.eliostruyf.com/tags/search-center/): Posts tagged with Search Center - [Searchbox · Elio Struyf](https://www.eliostruyf.com/tags/searchbox/): Posts tagged with Searchbox - [MVP · Elio Struyf](https://www.eliostruyf.com/tags/mvp/): Posts tagged with MVP - [Managed Properties · Elio Struyf](https://www.eliostruyf.com/tags/managed-properties/): Posts tagged with Managed Properties - [Search Results · Elio Struyf](https://www.eliostruyf.com/tags/search-results/): Posts tagged with Search Results - [Managed Metadata · Elio Struyf](https://www.eliostruyf.com/tags/managed-metadata/): Posts tagged with Managed Metadata - [Sorting · Elio Struyf](https://www.eliostruyf.com/tags/sorting/): Posts tagged with Sorting - [OWA · Elio Struyf](https://www.eliostruyf.com/tags/owa/): Posts tagged with OWA - [Delve · Elio Struyf](https://www.eliostruyf.com/tags/delve/): Posts tagged with Delve - [Office Graph · Elio Struyf](https://www.eliostruyf.com/tags/office-graph/): Posts tagged with Office Graph - [Refiner · Elio Struyf](https://www.eliostruyf.com/tags/refiner/): Posts tagged with Refiner - [Callouts · Elio Struyf](https://www.eliostruyf.com/tags/callouts/): Posts tagged with Callouts - [Custom Actions · Elio Struyf](https://www.eliostruyf.com/tags/custom-actions/): Posts tagged with Custom Actions - [Excel · Elio Struyf](https://www.eliostruyf.com/tags/excel/): Posts tagged with Excel - [Office App · Elio Struyf](https://www.eliostruyf.com/tags/office-app/): Posts tagged with Office App - [PowerPoint · Elio Struyf](https://www.eliostruyf.com/tags/powerpoint/): Posts tagged with PowerPoint - [Project · Elio Struyf](https://www.eliostruyf.com/tags/project/): Posts tagged with Project - [Word · Elio Struyf](https://www.eliostruyf.com/tags/word/): Posts tagged with Word - [Crawled Property · Elio Struyf](https://www.eliostruyf.com/tags/crawled-property/): Posts tagged with Crawled Property - [Managed Property · Elio Struyf](https://www.eliostruyf.com/tags/managed-property/): Posts tagged with Managed Property - [Themes · Elio Struyf](https://www.eliostruyf.com/tags/themes/): Posts tagged with Themes - [Composed Looks · Elio Struyf](https://www.eliostruyf.com/tags/composed-looks/): Posts tagged with Composed Looks - [Font Scheme · Elio Struyf](https://www.eliostruyf.com/tags/font-scheme/): Posts tagged with Font Scheme - [Fonts · Elio Struyf](https://www.eliostruyf.com/tags/fonts/): Posts tagged with Fonts - [Google Fonts · Elio Struyf](https://www.eliostruyf.com/tags/google-fonts/): Posts tagged with Google Fonts - [Web Font · Elio Struyf](https://www.eliostruyf.com/tags/web-font/): Posts tagged with Web Font - [BIWUG · Elio Struyf](https://www.eliostruyf.com/tags/biwug/): Posts tagged with BIWUG - [AngularJS · Elio Struyf](https://www.eliostruyf.com/tags/angularjs/): Posts tagged with AngularJS - [SPS · Elio Struyf](https://www.eliostruyf.com/tags/sps/): Posts tagged with SPS - [SPSNL · Elio Struyf](https://www.eliostruyf.com/tags/spsnl/): Posts tagged with SPSNL - [ESPC14 · Elio Struyf](https://www.eliostruyf.com/tags/espc14/): Posts tagged with ESPC14 - [Document Sets · Elio Struyf](https://www.eliostruyf.com/tags/document-sets/): Posts tagged with Document Sets - [Master Page · Elio Struyf](https://www.eliostruyf.com/tags/master-page/): Posts tagged with Master Page - [Cross-Site Publishing · Elio Struyf](https://www.eliostruyf.com/tags/cross-site-publishing/): Posts tagged with Cross-Site Publishing - [XSLT · Elio Struyf](https://www.eliostruyf.com/tags/xslt/): Posts tagged with XSLT - [Page Layouts · Elio Struyf](https://www.eliostruyf.com/tags/page-layouts/): Posts tagged with Page Layouts - [CSR · Elio Struyf](https://www.eliostruyf.com/tags/csr/): Posts tagged with CSR - [JS LInk · Elio Struyf](https://www.eliostruyf.com/tags/js-link/): Posts tagged with JS LInk - [Image Dimensions · Elio Struyf](https://www.eliostruyf.com/tags/image-dimensions/): Posts tagged with Image Dimensions - [SPSBE2014 · Elio Struyf](https://www.eliostruyf.com/tags/spsbe2014/): Posts tagged with SPSBE2014 - [Page Layout · Elio Struyf](https://www.eliostruyf.com/tags/page-layout/): Posts tagged with Page Layout - [Social · Elio Struyf](https://www.eliostruyf.com/tags/social/): Posts tagged with Social - [SharePoint Designer · Elio Struyf](https://www.eliostruyf.com/tags/sharepoint-designer/): Posts tagged with SharePoint Designer - [HTML · Elio Struyf](https://www.eliostruyf.com/tags/html/): Posts tagged with HTML - [Rating · Elio Struyf](https://www.eliostruyf.com/tags/rating/): Posts tagged with Rating - [JQuery · Elio Struyf](https://www.eliostruyf.com/tags/jquery/): Posts tagged with JQuery - [Visualisation · Elio Struyf](https://www.eliostruyf.com/tags/visualisation/): Posts tagged with Visualisation - [Ajax · Elio Struyf](https://www.eliostruyf.com/tags/ajax/): Posts tagged with Ajax - [Design Files · Elio Struyf](https://www.eliostruyf.com/tags/design-files/): Posts tagged with Design Files - [ECMAscript · Elio Struyf](https://www.eliostruyf.com/tags/ecmascript/): Posts tagged with ECMAscript - [PowerShell · Elio Struyf](https://www.eliostruyf.com/tags/powershell/): Posts tagged with PowerShell - [Top Navigation · Elio Struyf](https://www.eliostruyf.com/tags/top-navigation/): Posts tagged with Top Navigation - [Callout · Elio Struyf](https://www.eliostruyf.com/tags/callout/): Posts tagged with Callout - [Social Actions · Elio Struyf](https://www.eliostruyf.com/tags/social-actions/): Posts tagged with Social Actions - [Provisioning · Elio Struyf](https://www.eliostruyf.com/tags/provisioning/): Posts tagged with Provisioning - [CSS · Elio Struyf](https://www.eliostruyf.com/tags/css/): Posts tagged with CSS - [Footer · Elio Struyf](https://www.eliostruyf.com/tags/footer/): Posts tagged with Footer - [Hover Panels · Elio Struyf](https://www.eliostruyf.com/tags/hover-panels/): Posts tagged with Hover Panels - [Active Directory · Elio Struyf](https://www.eliostruyf.com/tags/active-directory/): Posts tagged with Active Directory - [Web Services · Elio Struyf](https://www.eliostruyf.com/tags/web-services/): Posts tagged with Web Services - [Color Palettes · Elio Struyf](https://www.eliostruyf.com/tags/color-palettes/): Posts tagged with Color Palettes - [Asset Library · Elio Struyf](https://www.eliostruyf.com/tags/asset-library/): Posts tagged with Asset Library - [Discussion List · Elio Struyf](https://www.eliostruyf.com/tags/discussion-list/): Posts tagged with Discussion List - [SPSBEX · Elio Struyf](https://www.eliostruyf.com/tags/spsbex/): Posts tagged with SPSBEX - [Content Query · Elio Struyf](https://www.eliostruyf.com/tags/content-query/): Posts tagged with Content Query - [Timer Jobs · Elio Struyf](https://www.eliostruyf.com/tags/timer-jobs/): Posts tagged with Timer Jobs - [Visual Studio · Elio Struyf](https://www.eliostruyf.com/tags/visual-studio/): Posts tagged with Visual Studio - [Social Features · Elio Struyf](https://www.eliostruyf.com/tags/social-features/): Posts tagged with Social Features - [Chart · Elio Struyf](https://www.eliostruyf.com/tags/chart/): Posts tagged with Chart - [Pie · Elio Struyf](https://www.eliostruyf.com/tags/pie/): Posts tagged with Pie - [Check In · Elio Struyf](https://www.eliostruyf.com/tags/check-in/): Posts tagged with Check In - [Page State · Elio Struyf](https://www.eliostruyf.com/tags/page-state/): Posts tagged with Page State - [Publishing Page · Elio Struyf](https://www.eliostruyf.com/tags/publishing-page/): Posts tagged with Publishing Page - [Ribbon · Elio Struyf](https://www.eliostruyf.com/tags/ribbon/): Posts tagged with Ribbon - [Reorder · Elio Struyf](https://www.eliostruyf.com/tags/reorder/): Posts tagged with Reorder - [MUI · Elio Struyf](https://www.eliostruyf.com/tags/mui/): Posts tagged with MUI - [Variations · Elio Struyf](https://www.eliostruyf.com/tags/variations/): Posts tagged with Variations - [Sandboxed · Elio Struyf](https://www.eliostruyf.com/tags/sandboxed/): Posts tagged with Sandboxed - [Fiddler · Elio Struyf](https://www.eliostruyf.com/tags/fiddler/): Posts tagged with Fiddler - [SOAP · Elio Struyf](https://www.eliostruyf.com/tags/soap/): Posts tagged with SOAP - [Office Web Apps · Elio Struyf](https://www.eliostruyf.com/tags/office-web-apps/): Posts tagged with Office Web Apps - [Documents · Elio Struyf](https://www.eliostruyf.com/tags/documents/): Posts tagged with Documents - [Grouping · Elio Struyf](https://www.eliostruyf.com/tags/grouping/): Posts tagged with Grouping - [Views · Elio Struyf](https://www.eliostruyf.com/tags/views/): Posts tagged with Views - [My Links · Elio Struyf](https://www.eliostruyf.com/tags/my-links/): Posts tagged with My Links - [My Site · Elio Struyf](https://www.eliostruyf.com/tags/my-site/): Posts tagged with My Site - [Workflow · Elio Struyf](https://www.eliostruyf.com/tags/workflow/): Posts tagged with Workflow - [Claims · Elio Struyf](https://www.eliostruyf.com/tags/claims/): Posts tagged with Claims - [Error · Elio Struyf](https://www.eliostruyf.com/tags/error/): Posts tagged with Error - [Accounts · Elio Struyf](https://www.eliostruyf.com/tags/accounts/): Posts tagged with Accounts - [Backup · Elio Struyf](https://www.eliostruyf.com/tags/backup/): Posts tagged with Backup - [StyleSheets · Elio Struyf](https://www.eliostruyf.com/tags/stylesheets/): Posts tagged with StyleSheets - [VSTO · Elio Struyf](https://www.eliostruyf.com/tags/vsto/): Posts tagged with VSTO - [Password · Elio Struyf](https://www.eliostruyf.com/tags/password/): Posts tagged with Password - [V4.master · Elio Struyf](https://www.eliostruyf.com/tags/v4.master/): Posts tagged with V4.master - [NuGet · Elio Struyf](https://www.eliostruyf.com/tags/nuget/): Posts tagged with NuGet - [Package · Elio Struyf](https://www.eliostruyf.com/tags/package/): Posts tagged with Package - [Application Page · Elio Struyf](https://www.eliostruyf.com/tags/application-page/): Posts tagged with Application Page - [Client Object Model · Elio Struyf](https://www.eliostruyf.com/tags/client-object-model/): Posts tagged with Client Object Model - [IE9 · Elio Struyf](https://www.eliostruyf.com/tags/ie9/): Posts tagged with IE9 - [Central Administration · Elio Struyf](https://www.eliostruyf.com/tags/central-administration/): Posts tagged with Central Administration - [Farm · Elio Struyf](https://www.eliostruyf.com/tags/farm/): Posts tagged with Farm - [Quiesce · Elio Struyf](https://www.eliostruyf.com/tags/quiesce/): Posts tagged with Quiesce - [Meeting Workspace · Elio Struyf](https://www.eliostruyf.com/tags/meeting-workspace/): Posts tagged with Meeting Workspace - [List Views · Elio Struyf](https://www.eliostruyf.com/tags/list-views/): Posts tagged with List Views - [JQuery UI · Elio Struyf](https://www.eliostruyf.com/tags/jquery-ui/): Posts tagged with JQuery UI - [Google · Elio Struyf](https://www.eliostruyf.com/tags/google/): Posts tagged with Google - [Minimal.master · Elio Struyf](https://www.eliostruyf.com/tags/minimal.master/): Posts tagged with Minimal.master - [SharePoint Foundation · Elio Struyf](https://www.eliostruyf.com/tags/sharepoint-foundation/): Posts tagged with SharePoint Foundation - [SharePoint Server · Elio Struyf](https://www.eliostruyf.com/tags/sharepoint-server/): Posts tagged with SharePoint Server ## Authentication-astro-azure-static-web-apps - [Authentication for Astro with Azure Static Web Apps · Elio Struyf](https://www.eliostruyf.com/authentication-astro-azure-static-web-apps/): Secure your Astro site effortlessly with Azure Static Web Apps authentication and Microsoft Entra ID. Follow our guide for seamless integration. ## Integrating-azure-functions-astro-site - [Integrating Azure Functions into your Astro site · Elio Struyf](https://www.eliostruyf.com/integrating-azure-functions-astro-site/): Learn how to seamlessly integrate Azure Functions into your Astro site for enhanced serverless capabilities and streamlined deployment. ## Archm - [· Elio Struyf](https://www.eliostruyf.com/archm/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## Deploy-astro-azure-static-web-apps-github-cli - [Deploy Astro to Azure Static Web Apps from GitHub and CLI · Elio Struyf](https://www.eliostruyf.com/deploy-astro-azure-static-web-apps-github-cli/): Learn to deploy your Astro site to Azure Static Web Apps using GitHub and CLI for a seamless experience. ## Realtime-news-updates-sharepoint-online-spfx - [RealTime News Updates in SharePoint Online with SPFx · Elio Struyf](https://www.eliostruyf.com/realtime-news-updates-sharepoint-online-spfx/): Implement real-time news updates in SharePoint Online using SPFx and Socket.IO for dynamic content without manual refreshes. ## Visual-studio-code-settings-coding-demos - [Useful Visual Studio Code settings for better coding demos · Elio Struyf](https://www.eliostruyf.com/visual-studio-code-settings-coding-demos/): Enhance your coding demos with these Visual Studio Code settings for better visibility and focus during presentations. ## Archy - [· Elio Struyf](https://www.eliostruyf.com/archy/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## Reflecting-incredible-year-2024-highlights - [Reflecting on an Incredible Year: 2024 Highlights · Elio Struyf](https://www.eliostruyf.com/reflecting-incredible-year-2024-highlights/): Reflect on an incredible 2024 filled with achievements, cycling milestones, awards, and innovative projects in this detailed year-end review. ## Mock-power-apps-connectors-tests-playwright - [Mock Power Apps connectors in tests with Playwright · Elio Struyf](https://www.eliostruyf.com/mock-power-apps-connectors-tests-playwright/): Learn how to mock Power Apps connectors in tests using Playwright for a controlled testing environment and accurate results. ## Start-testing-power-apps-playwright - [Start testing your Power Apps with Playwright · Elio Struyf](https://www.eliostruyf.com/start-testing-power-apps-playwright/): Learn how to test your Power Apps with Playwright for better reliability and performance in your business applications. ## E2e-testing-mfa-environment-playwright-auth-session - [E2E testing in MFA environment with Playwright auth session · Elio Struyf](https://www.eliostruyf.com/e2e-testing-mfa-environment-playwright-auth-session/): Easily perform E2E testing in MFA environments using Playwright's authenticated session state. Learn how to automate your tests without logging in every time. ## Fix-azure-function-node-js-github-actions-windows-workflow - [Fix Azure Function Node.js GitHub Actions Windows workflow · Elio Struyf](https://www.eliostruyf.com/fix-azure-function-node-js-github-actions-windows-workflow/): Fixing the Azure Function Node.js GitHub Actions Windows workflow to deploy only production dependencies and exclude the node_modules folder from the artifact. ## Breaking-github-upload-artifact-action - [Breaking changes in the GitHub upload-artifact action · Elio Struyf](https://www.eliostruyf.com/breaking-github-upload-artifact-action/): Learn about the recent GitHub `actions/upload-artifact` update that excludes hidden files by default, impacting workflows. ## Manage-netlify-branch-subdomains-netlify-dns - [Manage branch subdomains without Netlify DNS · Elio Struyf](https://www.eliostruyf.com/manage-netlify-branch-subdomains-netlify-dns/): Learn how to manage Netlify's branch subdomains using external DNS like Cloudflare, bypassing the need for Netlify DNS, for seamless deployment. ## Setting-variables-azure-devops-pipelines-node-js-scripts - [Set Azure DevOps pipeline variables with Node.js scripts · Elio Struyf](https://www.eliostruyf.com/setting-variables-azure-devops-pipelines-node-js-scripts/): Explore setting Azure DevOps pipeline variables effectively using Node.js, ensuring seamless task transitions in your CI/CD workflows. ## Automating-microsoft-365-login-mfa-playwright-tests - [Automating M365 login with MFA in Playwright tests · Elio Struyf](https://www.eliostruyf.com/automating-microsoft-365-login-mfa-playwright-tests/): Learn how to automate the login process for Microsoft 365 with multi-factor authentication (MFA) using Playwright in this informative blog post. ## Locally-testing-custom-github-action - [Locally running and testing your custom GitHub Action · Elio Struyf](https://www.eliostruyf.com/locally-testing-custom-github-action/): Learn how to locally test and run your custom GitHub Action using the @github/local-action command-line tool with this step-by-step guide. ## Create-github-issues-failed-playwright-tests - [Create GitHub issues on failed Playwright tests · Elio Struyf](https://www.eliostruyf.com/create-github-issues-failed-playwright-tests/): Learn how to automatically create GitHub issues for failed Playwright tests with the Playwright Issue Creator action, available on the GitHub Marketplace. ## Dispatch-github-action-workflow-script-action - [Dispatch a GitHub Action workflow with script action · Elio Struyf](https://www.eliostruyf.com/dispatch-github-action-workflow-script-action/): Learn how to use the `repository_dispatch` event in GitHub Actions to trigger a workflow with a webhook. ## Override-spfx-context-properties-playwright-e2e-tests - [Override SPFx context properties during Playwright E2E tests · Elio Struyf](https://www.eliostruyf.com/override-spfx-context-properties-playwright-e2e-tests/): Learn how to override SPFx context properties while running Playwright E2E tests. It allows you to perform tests with your mocked properties. ## Reporting-playwright-tests-microsoft-teams - [Reporting your Playwright tests to Microsoft Teams · Elio Struyf](https://www.eliostruyf.com/reporting-playwright-tests-microsoft-teams/): Learn how to easily report your Playwright test results to a Microsoft Teams channel with the help of the playwright-msteams-reporter reporter. ## Centralize-project-files-github-repositories - [Centralize your project files for your GitHub repositories · Elio Struyf](https://www.eliostruyf.com/centralize-project-files-github-repositories/): Learn how to centralize project health files your GitHub repositories using a special repository called .github ## Github-copilot-llm-code-extension - [Using GitHub Copilot's LLM in your VS Code extension · Elio Struyf](https://www.eliostruyf.com/github-copilot-llm-code-extension/): Explore the integration of GitHub Copilot's LLM API in your VS Code extension to revolutionize your development workflow with AI. ## Utilize-command-uris-documentation-access-vscode - [Utilize command URIs for documentation access in VSCode · Elio Struyf](https://www.eliostruyf.com/utilize-command-uris-documentation-access-vscode/): Learn how to improve the accessibility of your Visual Studio Code extensions by utilizing command URIs to open the documentation directly in the editor. ## Integrate-code-extension-scm-input - [Integrate your VS Code extension in SCM input · Elio Struyf](https://www.eliostruyf.com/integrate-code-extension-scm-input/): Integrate your VS Code extension into SCM input to provide additional logic for your commit messages. ## Set-timezone-github-codespaces - [How to set the timezone for your GitHub Codespaces · Elio Struyf](https://www.eliostruyf.com/set-timezone-github-codespaces/): Learn how to set the timezone for your GitHub Codespaces and avoid issues with dates. ## Level-presentations-slidev-demo-time-code - [Level Up Your Presentations: Slidev & Demo Time in VS Code · Elio Struyf](https://www.eliostruyf.com/level-presentations-slidev-demo-time-code/): Learn how to enhance your presentations and live coding demos with Slidev and the Demo Time extension in Visual Studio Code. ## Fix-admin-consent-sp-token-retrieval-flows-spfx - [Fix admin consent for SP token retrieval flows in SPFx · Elio Struyf](https://www.eliostruyf.com/fix-admin-consent-sp-token-retrieval-flows-spfx/): Learn how to fix admin consent issues with the 00000003-0000-0ff1-ce00-000000000000 SharePoint Entra App. ## Playwright-microsoft-dev-proxy-github-actions - [Use Playwright with Microsoft Dev Proxy on GitHub Actions · Elio Struyf](https://www.eliostruyf.com/playwright-microsoft-dev-proxy-github-actions/): Learn how to use Playwright with Microsoft Dev Proxy on GitHub Actions to easily test your solutions with the same mocked API responses as during development. ## Developing-custom-plugins-microsoft-dev-proxy - [Developing custom plugins for the Microsoft's Dev Proxy · Elio Struyf](https://www.eliostruyf.com/developing-custom-plugins-microsoft-dev-proxy/): Learn how to develop custom plugins for Microsoft's Dev Proxy. Extend the tool's functionality by intercepting API calls, modifying requests, and responses. ## Caching-dev-proxy-github-actions-workflows - [Caching Dev Proxy in your GitHub Actions workflows · Elio Struyf](https://www.eliostruyf.com/caching-dev-proxy-github-actions-workflows/): Learn how to cache the Dev Proxy in your GitHub Actions workflows. This allows you to reuse the Dev Proxy installation and speed up your workflow. ## Dev-proxy-github-actions-workflow-ubuntu - [Using Dev Proxy in your GitHub Actions workflow on Ubuntu · Elio Struyf](https://www.eliostruyf.com/dev-proxy-github-actions-workflow-ubuntu/): Learn how to use Dev Proxy in a GitHub Actions workflow on an Ubuntu hosted VM for intercepting and inspecting your API calls ## Dev-proxy-github-actions-workflow-macos - [Using Dev Proxy in your GitHub Actions workflow on macOS · Elio Struyf](https://www.eliostruyf.com/dev-proxy-github-actions-workflow-macos/): Learn how to use Dev Proxy in a GitHub Actions workflow on macOS hosted VM for intercepting and inspecting your API calls ## Devhack-running-background-service-github-actions - [#DevHack: Running a background service on GitHub Actions · Elio Struyf](https://www.eliostruyf.com/devhack-running-background-service-github-actions/): Learn how to run a background service on GitHub Actions and use it in combination with other steps. ## Devhack-synchronous-azure-translation-api-node - [#DevHack: use the synchronous Azure translation API in Node · Elio Struyf](https://www.eliostruyf.com/devhack-synchronous-azure-translation-api-node/): Learn how to use the new synchronous Azure AI Translator service in Node.js without setting up a storage account. Get started with this quick tutorial. ## Locally-verifying-github-actions-job-summaries - [Locally verifying GitHub Actions Job Summaries · Elio Struyf](https://www.eliostruyf.com/locally-verifying-github-actions-job-summaries/): Learn how to locally verify and test your GitHub Actions Job Summaries with the help of @actions/core dependency. Save time by testing before pushing changes. ## Cli-microsoft-365-typescript-azure-functions - [Using CLI for Microsoft 365 in TypeScript Azure Functions · Elio Struyf](https://www.eliostruyf.com/cli-microsoft-365-typescript-azure-functions/): Learn how to use the CLI for Microsoft 365 in TypeScript Azure Functions to automate tasks for Microsoft 365. ## Add-support-link-vscode-extension-marketplace - [Add a support link for a VSCode extension on the marketplace · Elio Struyf](https://www.eliostruyf.com/add-support-link-vscode-extension-marketplace/): Learn how to add a support link for your VSCode extension on the marketplace to provide helpful resources and assistance to your users. ## Running-net-azure-functions-macos-visual-studio-code - [Running .NET Azure Functions on macOS and Visual Studio Code · Elio Struyf](https://www.eliostruyf.com/running-net-azure-functions-macos-visual-studio-code/): Learn how to run .NET Azure Functions on macOS using Visual Studio Code. Step-by-step instructions for installing the necessary tools and setting them up. ## Browser-refreshing-sharepoint-page - [Help my browser keeps refreshing my SharePoint page · Elio Struyf](https://www.eliostruyf.com/browser-refreshing-sharepoint-page/): Learn how to fix your SharePoint page from going into an endless refreshing loop when third-party cookies are blocked. ## Protect-api-auth-keys-keeping-out-vscode-settings - [Protect keys by keeping those out of your VS Code settings · Elio Struyf](https://www.eliostruyf.com/protect-api-auth-keys-keeping-out-vscode-settings/): Learn how to better protect your API/Authentication keys by keeping them out of your Visual Studio Code settings. This article helps developers and users. ## Github-project-webhooks-manage-labeling-issues - [Using GitHub Project webhooks to manage labeling repo issues · Elio Struyf](https://www.eliostruyf.com/github-project-webhooks-manage-labeling-issues/): Learn how to automate project management using GitHub Project webhooks for labeling issues. ## Ups-downs-recap-2023 - [The ups and downs. A look back at 2023. · Elio Struyf](https://www.eliostruyf.com/ups-downs-recap-2023/): Reflect on the highs and lows of 2023! In this article, Elio looks back at 2023 on his personal and work-related achievements and progress. ## Demo-time-live-code-demos-smoother - [It is Demo Time; how to make your live code demos smoother · Elio Struyf](https://www.eliostruyf.com/demo-time-live-code-demos-smoother/): Discover how to make your live coding demos smoother and more efficient with the new Visual Studio Code Extension - Demo Time. ## Vite-bundling-visual-studio-code-extension - [Using Vite for bundling your Visual Studio Code extension · Elio Struyf](https://www.eliostruyf.com/vite-bundling-visual-studio-code-extension/): Learn how you can use Vite to generate a bundle for your Visual Studio Code extension. ## Custom-icons-visual-studio-code-commands - [Things to know when using custom icons for VSCode commands · Elio Struyf](https://www.eliostruyf.com/custom-icons-visual-studio-code-commands/): Learn the basics of using custom icons for VSCode commands and an important change in VSCode since version 1.83.0 how they are rendered. ## Linking-unlinking-multilingual-pages-sharepoint - [Linking and Unlinking Multilingual Pages in SharePoint · Elio Struyf](https://www.eliostruyf.com/linking-unlinking-multilingual-pages-sharepoint/): Learn how to link and unlink multilingual pages in SharePoint using the REST API. ## Add-custom-themable-icon-visual-studio-code - [Add a custom themable icon to Visual Studio Code · Elio Struyf](https://www.eliostruyf.com/add-custom-themable-icon-visual-studio-code/): Learn how to create an icon font and add it to your Visual Studio Code extension to add a custom themable icon to the editor. ## Playwright-reporter-github-actions - [The Playwright Reporter for GitHub Actions · Elio Struyf](https://www.eliostruyf.com/playwright-reporter-github-actions/): Learn how to use the @estruyf/github-actions-reporter to discern Playwright test results in GitHub Actions quickly. ## Test-unexpected-api-results-playwright-mocking - [Test the unexpected API results with Playwright mocking · Elio Struyf](https://www.eliostruyf.com/test-unexpected-api-results-playwright-mocking/): Test unexpected API results with Playwright mocking: Simulate server issues, throttling, ... to make sure your application handles it as expected. ## Test-microsoft-365-solutions-playwright - [End-to-End Test Microsoft 365 Solutions with Playwright · Elio Struyf](https://www.eliostruyf.com/test-microsoft-365-solutions-playwright/): This article explains how you can make use of Playwright to end-to-end test your Microsoft 365 (SharePoint & Microsoft Teams) solutions. ## Retrieving-artifact-previous-github-actions-workflow - [Retrieving an artifact from a previous GitHub Actions · Elio Struyf](https://www.eliostruyf.com/retrieving-artifact-previous-github-actions-workflow/): Learn how to download artifacts from previous GitHub Actions runs. A GitHub Script and workflow configuration is included. ## Splitting-vscode-extension-settings-multiple-categories - [Splitting VSCode Extension Settings into Multiple Categories · Elio Struyf](https://www.eliostruyf.com/splitting-vscode-extension-settings-multiple-categories/): Organize Visual Studio Code extension settings into multiple categories for a better overview and easier configuration with this guide. ## Render-astro-markdown-content-overviews - [Render your Astro markdown content for your overviews · Elio Struyf](https://www.eliostruyf.com/render-astro-markdown-content-overviews/): Learn how to easily render your Astro markdown content for overviews using Astro.glob() in this blog post. ## Leveraging-astro-react-app-performance-boost - [Leveraging Astro for React App Performance Boost · Elio Struyf](https://www.eliostruyf.com/leveraging-astro-react-app-performance-boost/): Boost React app performance using Astro: Learn how to split datasets, leverage Astro's routing mechanism, and optimize page sizes for faster performance. ## Localization-webviews-visual-studio-code - [Localization of Webviews in Visual Studio Code Extensions · Elio Struyf](https://www.eliostruyf.com/localization-webviews-visual-studio-code/): Discover the process of localizing webviews in Visual Studio Code extensions. Learn how to provide multilingual support for your webview experiences. ## Localization-visual-studio-code-extensions - [Localization of Visual Studio Code Extensions · Elio Struyf](https://www.eliostruyf.com/localization-visual-studio-code-extensions/): Learn how to localize your Visual Studio Code extensions! Explore localization of commands, settings, and strings in TypeScript files. ## Approve-multitenant-permission-scope-spfx-solution - [Approve a multitenant permission scope for a SPFx solution · Elio Struyf](https://www.eliostruyf.com/approve-multitenant-permission-scope-spfx-solution/): Troubleshooting SharePoint Permission Approval: Learn how to create a Service Principal and define the correct resource for successful permission scope approval ## Goodbye-rapid-reflection-building-successful-code-extension - [Saying Goodbye to Rapid · Elio Struyf](https://www.eliostruyf.com/goodbye-rapid-reflection-building-successful-code-extension/): This blog post reflects on the author's experience at Rapid and building a successful VS Code extension. It's a heartfelt goodbye and a reminder to keep smiling ## Managing-hugo-website-content-asset-submodule - [Managing my Hugo website with a content and asset submodule · Elio Struyf](https://www.eliostruyf.com/managing-hugo-website-content-asset-submodule/): In this article, Elio shows you how he manages his Hugo website's content and assets by separating them into a submodule. ## Dispatch-github-action-fine-grained-personal-access-token - [Dispatch a GitHub Action via a fine-grained PAT · Elio Struyf](https://www.eliostruyf.com/dispatch-github-action-fine-grained-personal-access-token/): In this article, Elio shows how to trigger a GitHub Action flow by using a fine-grained Personal Access Token and the repository dispatch trigger. ## Future-documentation-ready-change - [The Future of Documentation: Ready for Change? · Elio Struyf](https://www.eliostruyf.com/future-documentation-ready-change/): Discover the latest advancements in documentation technology and how tools like GitHub Copilot for Docs, Mendable, and OpenAI are changing the game. ## Css-hack-visual-studio-code-move-debug-toolbar - [A CSS hack to Visual Studio Code to move the Debug Toolbar · Elio Struyf](https://www.eliostruyf.com/css-hack-visual-studio-code-move-debug-toolbar/): Discover how I crafted a clever CSS hack to embed the Debug Toolbar into the titlebar. Level up your workflow! ## Symlink-content-astro-portability - [Symlink your content in Astro for better portability · Elio Struyf](https://www.eliostruyf.com/symlink-content-astro-portability/): Discover how to effortlessly symlink content in Astro for improved portability & flexibility. Learn to resolve Vite.js symlink issues with a simple fix. ## Macbook-air-m2-perfect-device-developers - [MacBook Air M2: a great device for developers on the go · Elio Struyf](https://www.eliostruyf.com/macbook-air-m2-perfect-device-developers/): As a developer, you need a reliable, powerful, and portable device. The MacBook Air M2 provides all of that and more. Discover why Elio likes this device.... ## Command-uri-vscode-webview-open-files-links - [Use command URI in a VSCode webview to open files and links · Elio Struyf](https://www.eliostruyf.com/command-uri-vscode-webview-open-files-links/): In this article, Elio shows how to use command URI to open files and links in a webview from a Visual Studio Code extension. ## Impactful-presentations-markdown-slidev - [Make impactful presentations with Markdown and Slidev · Elio Struyf](https://www.eliostruyf.com/impactful-presentations-markdown-slidev/): This article by Elio explains how you can use Markdown and Slidev to create powerful and effective presentations that captures the attention of your audience. ## Creating-submenu-code-step-step-guide - [Creating a Submenu in VS Code: A Step-by-Step Guide · Elio Struyf](https://www.eliostruyf.com/creating-submenu-code-step-step-guide/): In this article, Elio explains how to create a submenu in your Visual Studio Code context menus to make these less cluttered. ## Creating-timer-dismissable-notifications-visual-studio-code-extension - [Creating timer dismissable notifications in VS Code · Elio Struyf](https://www.eliostruyf.com/creating-timer-dismissable-notifications-visual-studio-code-extension/): In this article, Elio explains how you can create timer dismissable notifications for your Visual Studio Code extensions. ## Doubts-achievements-progress-2022-wrap - [The doubts, the achievements, and the progress. 2022 wrap-up · Elio Struyf](https://www.eliostruyf.com/doubts-achievements-progress-2022-wrap/): In this article, Elio looks back at 2022 on his personal and work-related achievements and progress. ## Cancel-progress-programmatically-visual-studio-code-extensions - [Cancel progress programmatically in VS Code extensions · Elio Struyf](https://www.eliostruyf.com/cancel-progress-programmatically-visual-studio-code-extensions/): In this article, Elio explains how you can create your cancellation token with the CancellationTokenSource class to cancel the progress programmatically. ## Authentication-provider-work-github-gitpod-codespaces - [Make your auth provider work in GitHub and Gitpod codespaces · Elio Struyf](https://www.eliostruyf.com/authentication-provider-work-github-gitpod-codespaces/): In this article, Elio explains how you can create an authentication provider that works with a proxy to redirect you to the desktop, GitHub Codespaces, Gitpod. ## Devhack-vscode-uri-handler-codespaces - [#DevHack: using the VSCode's URI Handler in codespaces · Elio Struyf](https://www.eliostruyf.com/devhack-vscode-uri-handler-codespaces/): In this article, Elio explains the correct way to use Visual Studio Code's URI handler to ensure that it also works on GitHub Codespaces and Gitpod. ## Migrate-disqus-github-discussions-giscus - [Migrate from Disqus to GitHub Discussions (giscus) · Elio Struyf](https://www.eliostruyf.com/migrate-disqus-github-discussions-giscus/): In this article, Elio explains how he migrated from Disqus to GitHub Discussions and how you can do so. ## Calling-github-graphql-api-app - [Calling the GitHub GraphQL API from an app · Elio Struyf](https://www.eliostruyf.com/calling-github-graphql-api-app/): In this article, Elio explains how you can use a GitHub App to make queries and mutations via the GraphQL API from GitHub. ## Finding-github-codespaces-deleting - [Finding your old GitHub Codespaces and deleting them · Elio Struyf](https://www.eliostruyf.com/finding-github-codespaces-deleting/): In this article, Elio explains how you can find your old Codespace instances which take up space and how to remove these. ## Ddos-azure-functions-front-door - [Someone is DDoS-ing my Azure Functions, and what to do · Elio Struyf](https://www.eliostruyf.com/ddos-azure-functions-front-door/): In this article, Elio explains how someone started spamming one of his Azure Functions to fake their statistics and what he did to overcome it. ## Story-buying-car-wrong - [The story of buying a car and what went wrong with it · Elio Struyf](https://www.eliostruyf.com/story-buying-car-wrong/): Instead of a technical article, Elio tells you his experience of buying a new Mercedes-Benz and all the things that went wrong during the complete process. ## Simplify-communication-visual-studio-code-extension-webview - [Simplify Visual Studio Code extension webview communication · Elio Struyf](https://www.eliostruyf.com/simplify-communication-visual-studio-code-extension-webview/): In this article, Elio explains how you can simplify the communication flow from your Visual Studio Code extension and its webview to wait for its response. ## Creating-reusable-auth-provider-visual-studio-code - [Creating a reusable auth provider in Visual Studio Code · Elio Struyf](https://www.eliostruyf.com/creating-reusable-auth-provider-visual-studio-code/): In this article, Elio explains how you can create a reusable authentication provider extension that you can leverage in all your extensions. ## Adding-editor-actions-extension-webview-vscode - [Adding editor actions for your extension webview in VSCode · Elio Struyf](https://www.eliostruyf.com/adding-editor-actions-extension-webview-vscode/): In this article, Elio explains how you can take advantage of the activeWebviewPanelId context key to enable or disable commands in Visual Studio Code extensions ## Open-vscode-extension-walkthrough-command - [Open your VSCode extension walkthrough from a command · Elio Struyf](https://www.eliostruyf.com/open-vscode-extension-walkthrough-command/): In this article Elio explains how you can open your Visual Studio Code extension walkthrough from a custom command. ## Handle-links-in-the-terminal-from-your-vscode-extension - [Handle links in the terminal from your VSCode extension · Elio Struyf](https://www.eliostruyf.com/handle-links-in-the-terminal-from-your-vscode-extension/): In this article, Elio explains how you can handle links in the terminal by your extension to allow these to be handled by your code instead of navigating.. ## Opening-folders-visual-studio-code-extension - [Opening folders in Visual Studio Code from an extension · Elio Struyf](https://www.eliostruyf.com/opening-folders-visual-studio-code-extension/): In this article, Elio explains how you can open a project folder or workspace from your extension' code for macOS, Linux, and Windows. ## Adding-or-deleting-github-project-labels-on-issues - [Adding or deleting GitHub project (classic) labels on issues · Elio Struyf](https://www.eliostruyf.com/adding-or-deleting-github-project-labels-on-issues/): In this article, Elio explains how you can use GitHub Actions to automatically add or delete project labels to issues when you add, move, or delete. ## Callback-extension-vscode - [How to callback to your extension from outside VS Code · Elio Struyf](https://www.eliostruyf.com/callback-extension-vscode/): In this article, Elio explains how you can create a callback URL that triggers your extension. This allows you to process files, open web pages, and more ## Create-authentication-provider-visual-studio-code - [Create an Authentication Provider for Visual Studio Code · Elio Struyf](https://www.eliostruyf.com/create-authentication-provider-visual-studio-code/): In this article, Elio explains how you can build your own authentication provider to be used in a Visual Studio Code extension. ## Microsoft-authentication-provider-visual-studio-code - [How to use the Microsoft auth provider in Visual Studio Code · Elio Struyf](https://www.eliostruyf.com/microsoft-authentication-provider-visual-studio-code/): In this article, Elio explains how you can use the Microsoft authentication provider in your extensions. ## Trick-bring-visual-studio-code-foreground-extension - [Extension tip to bring Visual Studio Code to the foreground · Elio Struyf](https://www.eliostruyf.com/trick-bring-visual-studio-code-foreground-extension/): In this article Elio explains how you can get Visual Studio Code to be brought back to the foreground. ## Devhack-fetching-sponsors-github-graphql-api - [#DevHack: Fetching sponsors via the GitHub GraphQL API · Elio Struyf](https://www.eliostruyf.com/devhack-fetching-sponsors-github-graphql-api/): In this article Elio explains how you can retrieve your sponsors for your open-source projects via the GitHub GraphQL API. ## Devhack-code-extension-storage-options - [#DevHack: VS Code extension storage options · Elio Struyf](https://www.eliostruyf.com/devhack-code-extension-storage-options/): In this article Elio helps you find out what the options of data storage are in Visual Studio code an which one to use in which circumstances. ## Code-driven-approach-theme-vscode-webview - [A code-driven approach to theme your VS Code webview · Elio Struyf](https://www.eliostruyf.com/code-driven-approach-theme-vscode-webview/): In this article, Elio shows a code-driven approach to theme your Visual Studio Code extension webviews. ## Good-bad-experiences-wrapping-2021 - [Taking the good out of the bad experiences, wrapping up 2021 · Elio Struyf](https://www.eliostruyf.com/good-bad-experiences-wrapping-2021/): Read more about my personal experiences in the year 2021. Merry Christmas and best wishes for 2022. ## React-vscode-webview-hot-module-replacement - [Use React in your VSCode WebView with hot module replacement · Elio Struyf](https://www.eliostruyf.com/react-vscode-webview-hot-module-replacement/): In this article I explain how you can integrate a React application into your VSCode webview and make sure Hot Module Replacement is working during development. ## Devhack-check-vscode-extension-running - [#DevHack: check how your VSCode extension is running · Elio Struyf](https://www.eliostruyf.com/devhack-check-vscode-extension-running/): This article describes how you can check if your VSCode extension is running in development, production, or test mode. ## Moving-to-rapid-api - [Change is here - Rapid API here I am · Elio Struyf](https://www.eliostruyf.com/moving-to-rapid-api/): Rapid API - The next step in my career. As of 29th of November 2021, I joined Rapid API to become a Lead DevTools Engineer. ## Ai-ghostwriter-articles - [Can an AI be used as a ghostwriter for your articles? · Elio Struyf](https://www.eliostruyf.com/ai-ghostwriter-articles/): Is an AI able to write the contents of your article? Well, that was a question I had and wanted to find out. In this article I tell you all about it. ## Reviewing-cloudflare-pages-show-offer - [Reviewing Cloudflare Pages to show what it has to offer · Elio Struyf](https://www.eliostruyf.com/reviewing-cloudflare-pages-show-offer/): In this article I review Cloudflare its Pages service. A service that allows to host your Jamstack websites fast, secure, and easily. ## Features-benefits-front-matter-cms - [A look at the features and benefits of the Front Matter CMS · Elio Struyf](https://www.eliostruyf.com/features-benefits-front-matter-cms/): Front Matter has been created with the intention of becoming a simple and easy-to-use CMS. Read more about the features and benefits of the Front Matter CMS. ## Broken-vertebra-healthier-working-home - [How a broken vertebra got me healthier working from home · Elio Struyf](https://www.eliostruyf.com/broken-vertebra-healthier-working-home/): In June 2021, I broke a vertebra and was only allowed to walk or rest. While sitting was painful, I bought a treadmill and started working while walking. ## Integrating-algolia-docsearch-next-js-docusaurus - [Integrating Algolia DocSearch into Next.js like Docusaurus · Elio Struyf](https://www.eliostruyf.com/integrating-algolia-docsearch-next-js-docusaurus/): Learn more about using Algolia's DocSearch documentation scrapper and component in your Next.js website. ## Demystify-microsoft-viva-connections-extensibility-model - [Demystify Microsoft Viva Connections its extensibility model · Elio Struyf](https://www.eliostruyf.com/demystify-microsoft-viva-connections-extensibility-model/): Are testing out the extensibility model of Viva Connections but are a bit confused about all the components? Read this article to get a better understanding. ## Devhack-language-specific-settings-vscode-extension - [#DevHack: language-specific settings in a VSCode extension · Elio Struyf](https://www.eliostruyf.com/devhack-language-specific-settings-vscode-extension/): Get to know how you can set language-specific settings straight from within the code of your Visual Studio Code extension. ## Devhack-rename-file-vscode-extension - [#DevHack: How to rename a file from a VSCode extension · Elio Struyf](https://www.eliostruyf.com/devhack-rename-file-vscode-extension/): In this DevHack we will learn how to rename a file from a vscode extension. If you are looking for a simple appraoch, this will be the one to use. ## Devhack-vscode-extension-running-wsl - [#DevHack: Check if a VSCode extension is running in WSL · Elio Struyf](https://www.eliostruyf.com/devhack-vscode-extension-running-wsl/): Are you developing a Visual Studio Code extension and do you need to know when it is running in WSL? In this article I explain how you can see when this happens ## Generate-open-graph-preview-image-code-front-matter - [Generate open graph preview image in Code with Front Matter · Elio Struyf](https://www.eliostruyf.com/generate-open-graph-preview-image-code-front-matter/): Get to know how you can generate a preview image for your articles by using a custom script and the Front Matter Visual Studio Code extension. ## Devhack-installing-hugo-windows-wsl - [#DevHack: Installing Hugo on Windows with WSL · Elio Struyf](https://www.eliostruyf.com/devhack-installing-hugo-windows-wsl/): Get to know how you can install Hugo io on Windows by using Windows Subsystem for Linux (WSL) in combination with Homebrew. ## Devhack-authentication-azure-web-pubsub-azure-functions - [#DevHack: Authenticate Azure Web PubSub with Azure Functions · Elio Struyf](https://www.eliostruyf.com/devhack-authentication-azure-web-pubsub-azure-functions/): Get to know how you can use an Azure Function to retrieve an authentication token for your Azure Web PubSub service. ## Creating-pwa-microsoft-teams-app - [Creating a PWA for your Microsoft Teams app · Elio Struyf](https://www.eliostruyf.com/creating-pwa-microsoft-teams-app/): Progressive Web Apps (PWA) are nothing new, but you see more and more websites implementing them. PWA provides you a way to bring your site as an app to your desktop/tablet/mobile. For Squarl, I first thought of creating a mobile app, but at the beginning of a new product. There is a lot to take care of, which made me feel a native mobile app is a right thing? ## Devhack-shared-file-info-microsoft-graph - [#DevHack: Get the shared file info with Microsoft Graph · Elio Struyf](https://www.eliostruyf.com/devhack-shared-file-info-microsoft-graph/): When you copy and share links from files, it creates a URL from which you cannot determine which file it is. For Squarl, I wanted to find out which file was behind a shared link to show the information about the file. First of all, the shared links look like this: ## Back-to-basics-started-building-squarl - [Let us go back to the basics. Why I started building Squarl. · Elio Struyf](https://www.eliostruyf.com/back-to-basics-started-building-squarl/): Pen and paper, that is all that we needed years ago to start send messages or information from one person to another. This way of communication is still available, as it is effective. People like to go to their mailbox to see if some envelopes are waiting to be opened. At least, that is when we are not expecting bills. ## Deploy-azure-functions-package-github-actions - [Deploy your Azure Functions as a package from GitHub Actions · Elio Struyf](https://www.eliostruyf.com/deploy-azure-functions-package-github-actions/): For Squarl, I started to implement a couple of improvements for the back-end running on Azure Functions. I created these functions with TypeScript. In the past, I used webpack and later Azure Funcpack to bundle my functions to one file per function. That way, the host does not have to do all those read actions for retrieving the dependencies. ## Deploy-site-vercel-github-actions-releases - [Deploy your site to Vercel using GitHub Actions and Releases · Elio Struyf](https://www.eliostruyf.com/deploy-site-vercel-github-actions-releases/): One of my favorite hosting companies is Vercel as they can provide simplicity and flexibility at the same time. I wanted to control my site’s deployment process on Vercel entirely for a new product I am building. Usually, when you use Vercel in combination with GitHub. It will automatically trigger new deployments when you push code. ## Securing-azure-functions-existing-azure-ad-app - [Securing your Azure Functions with an existing Azure AD app · Elio Struyf](https://www.eliostruyf.com/securing-azure-functions-existing-azure-ad-app/): This article continues the previous article about using the OAuth On-Behalf-Of flow in your Azure Functions. In the last article, the Azure Function only verifies the JWT Token, and if valid, uses it to request an access token and get data on your behalf. Info Link to the previous article about Using OAuth On-Behalf-Of flow in a Node. ## Oauth-behalf-flow-node-js-azure-functions - [Using OAuth On-Behalf-Of flow in a Node.js Azure Functions · Elio Struyf](https://www.eliostruyf.com/oauth-behalf-flow-node-js-azure-functions/): While implementing a couple of Azure Functions, I needed to use the OAuth 2.0 On-Behalf-Of flow. With this flow, you can allow, for instance, an API to perform tasks on your behalf. This flow is great when you want to offload some of the work from the front-end or perform additional calls on the back-end when processing data. ## Devhack-raycast-speed-productivity - [#DevHack: Using Raycast to speed up my productivity · Elio Struyf](https://www.eliostruyf.com/devhack-raycast-speed-productivity/): It does not happen often I write an article about a tool, but this time, I felt this tool deserved some extra attention. Raycast is a tool that you can compare to Spotlight from macOS and Alfred, and yes, it is macOS only. Many people use Alfred, and I have been using Alfred since I had my first Macbook. ## Microsoft-graph-essentials-extension-released-vscode - [Microsoft Graph Essentials extension released for VSCode · Elio Struyf](https://www.eliostruyf.com/microsoft-graph-essentials-extension-released-vscode/): Recently I started working more and more with the Microsoft Graph again and the related toolkit. While I began to use a couple of the Microsoft Graph Toolkit (MGT) components, I wanted to change the styling a bit and add some custom templates. I noticed that there was not yet a Visual Studio Code extension that helps you with building apps with MGT. ## Devhack-caching-data-vscode-extension - [#DevHack: Caching data for your VSCode extension · Elio Struyf](https://www.eliostruyf.com/devhack-caching-data-vscode-extension/): For my Visual Studio Code extension to autocomplete the Microsoft Graph APIs, I wanted to improve the speed of the suggestions by implementing a cache. That way, you would not have to do the same API calls each time. In-memory cache has its limits Initially, I started with just an in-memory cache. ## Vscode-extension-autocompleting-microsoft-graph-api - [VSCode extension for autocompleting your Microsoft Graph API · Elio Struyf](https://www.eliostruyf.com/vscode-extension-autocompleting-microsoft-graph-api/): While working on a project which uses Microsoft Graph APIs, I found myself opening the Microsoft Graph Explorer a lot to check which paths/parameters were available. The Microsoft Graph Explorer is a great tool, but I love not to change context too much. As I like to create Visual Studio Code extensions, I did not have to think long to start building a new extension. ## Publishing-vscode-extensions-github-actions - [Publishing your VSCode Extensions from GitHub Actions · Elio Struyf](https://www.eliostruyf.com/publishing-vscode-extensions-github-actions/): Automation is key! That is how I think anyway. I’m not too fond of repetition, but for some reason, I had not yet automated my Visual Studio Code extension publishing. I always did this manually from my terminal by running vsce publish. With my latest extension, I thought, now is the time to automate this as well. ## Devhack-skip-github-actions-specific-commits-messages - [#DevHack: Skip GitHub Actions on specific commits messages · Elio Struyf](https://www.eliostruyf.com/devhack-skip-github-actions-specific-commits-messages/): In the doctor project, I try to do as much as possible in one GitHub Actions workflow. Having all logic in one workflow makes it more convenient but comes with a couple of complexities. Like, do you want to run each action for every type of commit/PR/…? The whole GitHub Actions workflow Why I want to skip actions/jobs in my workflow I host the documentation on Vercel. ## Diy-building-busy-light-show-slack-presence - [DIY: Building a busy light to show your Slack presence · Elio Struyf](https://www.eliostruyf.com/diy-building-busy-light-show-slack-presence/): Going back a year in time, I created a post about building my Busy Light, which I connected to the Microsoft Graph. Homebridge is used to control the busy light, its colors, and statuses. Busy light controlled by Slack presence Info The related article: Building a busy light to show your Microsoft Teams presence The busy light has been running without issues since I hang it at my office until earlier this week. ## Goodbye-valo-world-time-explore - [Goodbye Valo World it is time to explore something new · Elio Struyf](https://www.eliostruyf.com/goodbye-valo-world-time-explore/): For the last 3,5 years, I have been working at Valo. I started as a developer and eventually became the Engineering Lead. Every single day I enjoyed working at Valo. It has been an exciting ride. Oh, and we all change over the years. That is what you can see in the following pictures. ## Restart-github-actions-workflow-failed - [Restart your GitHub Actions workflow when something failed · Elio Struyf](https://www.eliostruyf.com/restart-github-actions-workflow-failed/): Sometimes it happens that your GitHub Actions workflow fails. When this happens, it is appropriate to check what exactly went wrong before you restart it. Sometimes it could be a timeout or something that was incorrectly configured on the site to test. This issue is precisely the case for my doctor build/test/release GitHub Actions workflow as I do so many changes to test out the tool. ## Environment-variables-hugo-show-branch-information - [Use environment variables in Hugo to show branch information · Elio Struyf](https://www.eliostruyf.com/environment-variables-hugo-show-branch-information/): For the new documentation website of Doctor, I wanted to do something similar like I did for Pimp Your Own Bike to show a message depending on the version/branch of the site I am using. For the doctor documentation, I wanted to use this method to show a beta message when using the beta site (beta. ## Write-code-comments-or-not-should-not-be-question - [To write code comments or not, it should not be a question · Elio Struyf](https://www.eliostruyf.com/write-code-comments-or-not-should-not-be-question/): Comments, just do it. I write this post because I read a couple of articles, and messages on social platforms about stop using comments in your code. In some cases, there is good reasoning behind it, but even with this reasoning, I believe that comments are too valuable for your DEV team. ## Devhack-open-vscode-extension-settings-code - [#DevHack: Open your VSCode extension settings from the code · Elio Struyf](https://www.eliostruyf.com/devhack-open-vscode-extension-settings-code/): For my VSCode Front Matter extension, I wanted to implement a link that allows you to open the VSCode settings to the extension quickly. Front Matter - Quick link to settings I could not find anything in the documentation but found a reference on Stackoverflow mentioning you could use: vscode.commands.executeCommand( 'workbench. ## Doctor-azure-devops-generate-documentation - [Using Doctor on Azure DevOps to generate your documentation · Elio Struyf](https://www.eliostruyf.com/doctor-azure-devops-generate-documentation/): GitHub Actions is hot these days, but still, Azure DevOps is being used in many companies, and I do as well. Doctor a tool for publishing your markdown documentation on SharePoint, works nicely on Azure DevOps as well. Info I will use the doctor sample as the blueprint for this article. ## Devhack-github-actions-run-step-schedule - [#DevHack: GitHub Actions do not run step on schedule · Elio Struyf](https://www.eliostruyf.com/devhack-github-actions-run-step-schedule/): When creating a whole new Github Actions workflow for Doctor, I wanted to do as much as possible from one workflow and be able to limit specific actions depending on how it triggered. I wanted my GitHub Actions to run on each push to the dev and main branch and run the tests on a schedule. ## Devhack-azure-cdn-sas-verizon-premium - [#DevHack: Using Azure CDN with SAS on Verizon Premium · Elio Struyf](https://www.eliostruyf.com/devhack-azure-cdn-sas-verizon-premium/): In the previous article, I explained how you could use the Shared Access Signature (SAS) in Cloudflare. The reason that I use this approach is to make sure the Azure Storage cannot be publicly accessed. Only via a SAS token blobs can be retrieved or updated. If you want to do this for Azure CDN, I pointed to the documentation to configure this, but it seems that it has changed a bit over time. ## Cloudflare-serve-private-azure-storage-blobs - [Using Cloudflare to serve your private Azure Storage Blobs · Elio Struyf](https://www.eliostruyf.com/cloudflare-serve-private-azure-storage-blobs/): Recently I wrote about how to use Cloudflare as a CDN for your Azure Storage Containers/Blobs. The process for setting up Cloudflare for Azure Storage is straightforward. Info Use Cloudflare CDN for your Azure Storage caching Now to make this work, you need to configure the Azure Storage to be anonymously accessible. ## Doctor-github-actions-publishing-documentation - [Using Doctor in GitHub Actions for your documentation · Elio Struyf](https://www.eliostruyf.com/doctor-github-actions-publishing-documentation/): Doctor is a tool that you can use to write your documentation in markdown and push it to your SharePoint. That way, you have one location to use and share the documentation in your company. In this article, I want to tell you more about how you can set up GitHub Actions to do automated documentation deployments. ## Devhack-setting-cors-azure-storage-blobs-cloudflare - [#DevHack: CORS for Cloudflare cached Azure Storage blobs · Elio Struyf](https://www.eliostruyf.com/devhack-setting-cors-azure-storage-blobs-cloudflare/): In the previous post, I told you why we moved to Cloudflare CDN to serve our Azure Storage files instead of Azure CDN. During the testing of Cloudflare, I found out that CORS headers were not present for the files. Usually, this is not needed if you only retrieve one file, but if you want to retrieve another file, for instance, a template from your site, these cross-origin resource sharing headers are required. ## Devhack-cloudflare-cdn-azure-storage-caching - [#DevHack: Use Cloudflare CDN for your Azure Storage caching · Elio Struyf](https://www.eliostruyf.com/devhack-cloudflare-cdn-azure-storage-caching/): Getting your files faster to your clients is very important. There are various options for this. Last year, we started to look into Azure CDN to quickly and reliably provide our source files to our customers. The Azure CDN is put in front of an Azure Storage account on which we host the files in different blob containers. ## Holding-on-and-making-the-best-out-of-2020 - [Holding on and making the best out of 2020 · Elio Struyf](https://www.eliostruyf.com/holding-on-and-making-the-best-out-of-2020/): Again we are at the end of the year and to start with the same words from my 2019 recap. WHAT A YEAR! If you read my 2019 recap, you know that it was a personal rollercoaster. At the beginning of 2020, I had a lot of energy and was pretty excited to make it a great year. ## Devhack-specifying-what-to-run-on-vercel-dev - [#DevHack: Specifying what to run on Vercel dev · Elio Struyf](https://www.eliostruyf.com/devhack-specifying-what-to-run-on-vercel-dev/): While developing the integration with Strava on our cycling club website, I wanted to use serverless functions to simplify the data retrieval from Strava. The website runs on Vercel, and if you’re going to test out your serverless functions locally, you will need to use Vercel its CLI. You can install the Vercel CLI by running the following command: npm i vercel -g. ## Devhack-cross-platform-testing-tool-github-actions - [#DevHack: cross-platform testing your tool on GitHub Actions · Elio Struyf](https://www.eliostruyf.com/devhack-cross-platform-testing-tool-github-actions/): One of the Doctor’s objectives, a documentation tool that converts markdown to SharePoint pages, was to make it usable cross-platform. Initially, I created this as an internal tool for Valo and would only be used on Azure DevOps or GitHub Actions. In the first release, I focussed on making the tool available to others like you and seeing if there was any interest in it. ## Doctor-static-site-generator-sharepoint - [Doctor - the static site generator for SharePoint · Elio Struyf](https://www.eliostruyf.com/doctor-static-site-generator-sharepoint/): I love static sites! In 2020 I have created ten production sites with various static site generators and a couple of POCs. My favorites are Hugo and Next.js. Doctor logo The story Internally in our team, we did the same. For our Valo partner/client documentation, we used mkdocs as our static site generator. ## Devhack-open-custom-vscode-webview-panel-focus-input - [#DevHack: Open custom VSCode WebView panel and focus input · Elio Struyf](https://www.eliostruyf.com/devhack-open-custom-vscode-webview-panel-focus-input/): For the last two weeks, I have been working on my FrontMatter extension for Visual Studio Code. This extension helps others and myself make it easier to manage their static markdown pages’ metadata. Some time ago, I received the question to enhance the tag and category experience. As when you have many tags or categories, it is not optimal to use the selectors/pickers VSCode provides you. ## Be-aware-adding-extensions-sharepoint-content-type-hub - [Be aware adding extensions to SharePoint Content Type Hub · Elio Struyf](https://www.eliostruyf.com/be-aware-adding-extensions-sharepoint-content-type-hub/): For one of our clients, we had a Microsoft support case open for a long time. On the client, its tenant, every time they created a new site collection, our Valo application customizers appeared automatically. Most of the time, this happened between 5-60 minutes. Internally in our Valo codebase, we do not have anything which triggers this automation. ## Tips-presenter-virtual-events - [Five tips to make you a better presenter at virtual events · Elio Struyf](https://www.eliostruyf.com/tips-presenter-virtual-events/): I love presenting on a stage. I love to engage with people, have an audience in front of me. So you think that presenting virtually would be no big deal. Actually, it is a big deal. One of the things I miss the most is the engagement with the audience. The feeling you talk to only yourself. ## Devhack-dismiss-messaging-extension-dialog-ms-teams - [#DevHack: Dismiss messaging extension dialog in MS Teams · Elio Struyf](https://www.eliostruyf.com/devhack-dismiss-messaging-extension-dialog-ms-teams/): Currently, I am developing my first “real” Microsoft Teams app with SharePoint Framework. In this app, I am making use of the new messaging extension capability. Info what are messaging extensions? While developing a form in my extension, I wanted to cancel and submit a button. When I started implementing the cancel button, its onClick event, I was lost in how to close the dialog. ## Devhack-optimizing-initial-load-js-nextjs - [#DevHack: Optimizing initial load JS from Next.js · Elio Struyf](https://www.eliostruyf.com/devhack-optimizing-initial-load-js-nextjs/): Now that my PimpYourOwnBike website has launched. I started looking at where I can do some optimizations. When looking at the Next.js build output, I spotted a red number in the First Load JS section. First load JS too big That would be the first thing on my list to optimize, getting this number from red to green. ## Devhack-create-sharepoint-library-microsoft-graph - [#DevHack: Create SharePoint library with the Microsoft Graph · Elio Struyf](https://www.eliostruyf.com/devhack-create-sharepoint-library-microsoft-graph/): When you are reading this, you are looking to create a SharePoint library from the Microsoft Graph. It is straightforward but a bit confusing because you will have to use the lists endpoint. When you are a SharePoint developer, we all learned that a list is not the same as a library, and lists get created under the /lists/ URL path. ## Categories - [Categories · Elio Struyf](https://www.eliostruyf.com/categories/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger - [Development · Elio Struyf](https://www.eliostruyf.com/categories/development/): Posts tagged with Development - [TypeScript · Elio Struyf](https://www.eliostruyf.com/categories/typescript/): Posts tagged with TypeScript - [WebDev · Elio Struyf](https://www.eliostruyf.com/categories/webdev/): Posts tagged with WebDev - [SharePoint · Elio Struyf](https://www.eliostruyf.com/categories/sharepoint/): Posts tagged with SharePoint - [Testing · Elio Struyf](https://www.eliostruyf.com/categories/testing/): Posts tagged with Testing - [VSTS · Elio Struyf](https://www.eliostruyf.com/categories/vsts/): Posts tagged with VSTS - [Office 365 · Elio Struyf](https://www.eliostruyf.com/categories/office-365/): Posts tagged with Office 365 - [SharePoint Online · Elio Struyf](https://www.eliostruyf.com/categories/sharepoint-online/): Posts tagged with SharePoint Online - [Personal · Elio Struyf](https://www.eliostruyf.com/categories/personal/): Posts tagged with Personal - [Display Templates · Elio Struyf](https://www.eliostruyf.com/categories/display-templates/): Posts tagged with Display Templates - [Azure · Elio Struyf](https://www.eliostruyf.com/categories/azure/): Posts tagged with Azure - [Node.js · Elio Struyf](https://www.eliostruyf.com/categories/node.js/): Posts tagged with Node.js - [Search · Elio Struyf](https://www.eliostruyf.com/categories/search/): Posts tagged with Search - [Microsoft Graph · Elio Struyf](https://www.eliostruyf.com/categories/microsoft-graph/): Posts tagged with Microsoft Graph - [Add-In · Elio Struyf](https://www.eliostruyf.com/categories/add-in/): Posts tagged with Add-In - [Office · Elio Struyf](https://www.eliostruyf.com/categories/office/): Posts tagged with Office - [PowerApps · Elio Struyf](https://www.eliostruyf.com/categories/powerapps/): Posts tagged with PowerApps - [SharePoint Saturday · Elio Struyf](https://www.eliostruyf.com/categories/sharepoint-saturday/): Posts tagged with SharePoint Saturday - [JavaScript · Elio Struyf](https://www.eliostruyf.com/categories/javascript/): Posts tagged with JavaScript - [Conference · Elio Struyf](https://www.eliostruyf.com/categories/conference/): Posts tagged with Conference - [Speaking · Elio Struyf](https://www.eliostruyf.com/categories/speaking/): Posts tagged with Speaking - [Branding · Elio Struyf](https://www.eliostruyf.com/categories/branding/): Posts tagged with Branding - [UI Fabric · Elio Struyf](https://www.eliostruyf.com/categories/ui-fabric/): Posts tagged with UI Fabric - [Styling · Elio Struyf](https://www.eliostruyf.com/categories/styling/): Posts tagged with Styling - [SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/categories/sharepoint-2013/): Posts tagged with SharePoint 2013 - [Uncategorized · Elio Struyf](https://www.eliostruyf.com/categories/uncategorized/): Posts tagged with Uncategorized - [Office Web Apps · Elio Struyf](https://www.eliostruyf.com/categories/office-web-apps/): Posts tagged with Office Web Apps - [Office Graph · Elio Struyf](https://www.eliostruyf.com/categories/office-graph/): Posts tagged with Office Graph - [Apps · Elio Struyf](https://www.eliostruyf.com/categories/apps/): Posts tagged with Apps - [Delve · Elio Struyf](https://www.eliostruyf.com/categories/delve/): Posts tagged with Delve - [Cross-Site Publishing · Elio Struyf](https://www.eliostruyf.com/categories/cross-site-publishing/): Posts tagged with Cross-Site Publishing - [Page Layout · Elio Struyf](https://www.eliostruyf.com/categories/page-layout/): Posts tagged with Page Layout - [Social · Elio Struyf](https://www.eliostruyf.com/categories/social/): Posts tagged with Social - [SPC12 · Elio Struyf](https://www.eliostruyf.com/categories/spc12/): Posts tagged with SPC12 - [Master Page · Elio Struyf](https://www.eliostruyf.com/categories/master-page/): Posts tagged with Master Page - [Backup · Elio Struyf](https://www.eliostruyf.com/categories/backup/): Posts tagged with Backup - [Views · Elio Struyf](https://www.eliostruyf.com/categories/views/): Posts tagged with Views - [SharePoint Designer · Elio Struyf](https://www.eliostruyf.com/categories/sharepoint-designer/): Posts tagged with SharePoint Designer - [Web Part · Elio Struyf](https://www.eliostruyf.com/categories/web-part/): Posts tagged with Web Part - [XSLT · Elio Struyf](https://www.eliostruyf.com/categories/xslt/): Posts tagged with XSLT - [Ribbon · Elio Struyf](https://www.eliostruyf.com/categories/ribbon/): Posts tagged with Ribbon - [MUI · Elio Struyf](https://www.eliostruyf.com/categories/mui/): Posts tagged with MUI - [My Site · Elio Struyf](https://www.eliostruyf.com/categories/my-site/): Posts tagged with My Site - [Workflows · Elio Struyf](https://www.eliostruyf.com/categories/workflows/): Posts tagged with Workflows - [Active Directory · Elio Struyf](https://www.eliostruyf.com/categories/active-directory/): Posts tagged with Active Directory - [Central Administration · Elio Struyf](https://www.eliostruyf.com/categories/central-administration/): Posts tagged with Central Administration - [ECMAscript · Elio Struyf](https://www.eliostruyf.com/categories/ecmascript/): Posts tagged with ECMAscript - [Navigation · Elio Struyf](https://www.eliostruyf.com/categories/navigation/): Posts tagged with Navigation - [REST · Elio Struyf](https://www.eliostruyf.com/categories/rest/): Posts tagged with REST - [Permissions · Elio Struyf](https://www.eliostruyf.com/categories/permissions/): Posts tagged with Permissions ## My-take-on-the-nextjs-framework - [My take on the Next.js framework · Elio Struyf](https://www.eliostruyf.com/my-take-on-the-nextjs-framework/): Last week, just went I took my bike for a ride. I got an idea. What if I create a new store for selling online personalizable bike stickers? During the two-hour bike ride, I more and more got convinced of the idea. When I was back home, I started printing a couple of stickers to test it out. ## Devhack-configuring-domains-branches-vercel - [#DevHack: Configuring domains for your branches on Vercel · Elio Struyf](https://www.eliostruyf.com/devhack-configuring-domains-branches-vercel/): To prepare my new online store’s release for selling personalizable bike stickers called: Pimp Your Own Bike. I wanted to make sure that I could test out my website before merging it to the main branch. Using a predefined custom domain would be the easiest way. Highlighting my environments On Azure, I would typically use slots on the web app. ## Devhack-clarity-site-analytics - [#DevHack: Getting some clarity in your site analytics · Elio Struyf](https://www.eliostruyf.com/devhack-clarity-site-analytics/): This weekend I discovered a cool new tool from Microsoft called Clarity. The tool allows you to understand how users interact with your website. It can do this by using Google Analytics integration and features like session replays and heatmaps. Info https://clarity.microsoft.com/ I was not looking for such a tool. I just bumped into it. ## Devhack-dynamic-manifests-progressive-web-app-aka-pwa - [#DevHack: Dynamic manifests for Progressive Web App aka PWA · Elio Struyf](https://www.eliostruyf.com/devhack-dynamic-manifests-progressive-web-app-aka-pwa/): In the previous #DevHack, I told you how to use deep links in your PWA for Microsoft Teams. This approach I currently implemented in one of my proof of concepts. Another functionality that my POC needed to have is to have dynamic manifest creating for the PWA. Info #DevHack: Deep linking to Microsoft Teams in Android and iOS In this #DevHack, I will tell you how you can make it possible to get dynamic manifests for your PWA using Azure Static Web Apps and Azure Functions. ## Recap-of-collab-days-benelux-running-an-event-on-azure-static-web-app - [Running the CollabDays Benelux event on Azure Static Web App · Elio Struyf](https://www.eliostruyf.com/recap-of-collab-days-benelux-running-an-event-on-azure-static-web-app/): This article recaps the CollabDays Benelux event that BIWUG and DIWUG organized together and happened on the 24th of October. We held the event virtually due to Covid-19, like most of the events in 2020. We decided that we wanted to do this as a virtual event together around May/June timeframe to make sure we could let it happen. ## Devhack-deep-linking-microsoft-teams-android-ios - [#DevHack: Deep linking to Microsoft Teams in Android and iOS · Elio Struyf](https://www.eliostruyf.com/devhack-deep-linking-microsoft-teams-android-ios/): This week #DevHack is about opening Microsoft Teams deep links from your solution/app. For a new proof of concept, I wanted to open a chat/app from my PWA app quickly. Luckily Microsoft Teams supports this with their deep links functionality. Info Read more about Microsoft Teams deep links here: deep links documentation In the documentation, it states that you must use the https://teams. ## Right-approach-cache-data-solution-solution - [What is the right approach to cache data in your solution? · Elio Struyf](https://www.eliostruyf.com/right-approach-cache-data-solution-solution/): We all want to be the fastest. We all want to make sure our apps outperform others, but what do you need to do for it? In this article, I will explain what the best approach is to cache your solutions. Important When building on top of a platform like SharePoint, you will always have to deal with the fact that you cannot be faster than the platform itself. ## Devhack-simple-caching-node-js-azure-functions - [#DevHack: Simple caching in Node.js Azure Functions · Elio Struyf](https://www.eliostruyf.com/devhack-simple-caching-node-js-azure-functions/): Azure Functions do not have an out-of-the-box caching mechanism. For caching, the recommended way would be to use a distributed cache like Azure Cache or Redis. These services each come with their price tag and might be too robust for the cache you want to create or need. For Azure Function created with C#, you can use the good old memory cache. ## Devhack-microsoft-edge-network-console - [#DevHack: Microsoft Edge - Network Console · Elio Struyf](https://www.eliostruyf.com/devhack-microsoft-edge-network-console/): For a long time, I loved using Postman for API testing. Ever since the Chrome apps got deprecated, the experience was not the same anymore. Since then, I have been using Charles, Insomnia, and some other tools. This week I discovered an experimental feature in Microsoft Edge which allows you to edit and replay API calls from within the browser. ## Watch-referrer-header-spfx-chrome-85-higher - [SPFx issues with the new Referrer-Policy in Chrome >= 85 · Elio Struyf](https://www.eliostruyf.com/watch-referrer-header-spfx-chrome-85-higher/): Since version 85 of Chrome, the default referrer policy has changed from no-referrer-when-downgrade to strict-origin-when-cross-origin. This change might have a significant impact on your SharePoint Framework solutions when they rely on the referrer header (or better, the referer header with a single “r”). What is the referrer header? Whenever your browser does an API call, the referrer header gets used to indicate the page’s origin from where it was performed. ## Redesign-blog-tailwind-2020 - [Redesign of my blog with Tailwind · Elio Struyf](https://www.eliostruyf.com/redesign-blog-tailwind-2020/): Since the beginning of 2013, I have been using the same blog theme with a couple of small changes that I did over the years. Most of the time, I would change the primary colors, but that was all. Why would you change something which works fine? When I moved from WordPress to a static site, at first, I thought it would be an excellent time to redo the design, but the migration took a bit longer, so I just ported the design to Hugo. ## Running-online-store-powerplatform-azure - [Running #PYOD online store with PowerPlatform and Azure · Elio Struyf](https://www.eliostruyf.com/running-online-store-powerplatform-azure/): During the Corona crisis, Luise Freese and I was chatting about conferences and stickers. Nobody can get stickers these days, as all conferences are now virtual. That brought us to the crazy idea of opening our sticker store on which we want to sell stickers created for IT/Tech/DEV people. Info the store is called Pimp Your Own Device and is available at: http://pimpyourowndevice. ## Pnp-virtual-conference-start-ui-testing-solutions - [PnP Virtual Conference: Start UI testing your solutions · Elio Struyf](https://www.eliostruyf.com/pnp-virtual-conference-start-ui-testing-solutions/): On the first of September 2020, the PnP team organized its first virtual conference. The conference had lots of great sessions, and I am sure you would have had a hard time picking the sessions you wanted to follow. You know what they say, choosing is losing. Actually, that is not true. ## Parse-multipart-form-data-azure-function - [Parse multipart/form-data in Azure Function · Elio Struyf](https://www.eliostruyf.com/parse-multipart-form-data-azure-function/): While working on an internal Azure Static Web Site project, I needed to upload CSV files to an Azure Function to import data to Cosmos DB. When uploading a file to your API, the multipart/form-data content-type is used. The body’s format looks a bit “special” as it requires some parsing to get each file. ## Picked-cypress-selenium - [Why I picked Cypress over Selenium · Elio Struyf](https://www.eliostruyf.com/picked-cypress-selenium/): For the PnP Virtual Conference, I did a talk about how to start with UI testing. During the session, someone asked me why my preference is Cypress and not Selenium. As the session was only 30 minutes, it is hard to fit every bits and piece in it. That is the intention of this article to tell you why we are using Cypress. ## Session - [· Elio Struyf](https://www.eliostruyf.com/session/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## Speaking - [Improving the performance of your SharePoint framework solutions · Elio Struyf](https://www.eliostruyf.com/speaking/improving-performance-sharepoint-framework-solutions/): On this page, you can find some related references for the “Improving the performance of your SharePoint framework solutions” session. Link to the slides of where the session was presented ESPC20 online Useful links Utility functions which you might not know existed in SPFx Optimize builds for production Modern web part optimization Portal performance guidelines - [#Sketchnotes and #FunctionalDrawing (not only) for Consultants and IT Pros · Elio Struyf](https://www.eliostruyf.com/speaking/sketchnotes-and-functional-drawing-not-only-for-consultants-and-it-pros/): On this page, you can find some related references for the “#Sketchnotes and #FunctionalDrawing (not only) for Consultants and IT Pros” session which Luise Freese and I presented. Session introduction Feedback If you want, you can provide feedback via the following form: feedback form. Session information For this session no slides were used. - [Advanced Dev-Ops with the SharePoint Framework · Elio Struyf](https://www.eliostruyf.com/speaking/advanced-devops-with-the-sharepoint-framework/): On this page, you can find some related references for the “Advanced Dev-Ops with the SharePoint Framework” session. Feedback If you want, you can provide feedback via the following form: feedback form. Link to the slides of where the session was presented 2-5 December 2019 – European SharePoint, Office 365 & Azure Conference Useful links Azure DevOps Labs Deployment jobs Deployment Strategies Defined Implement Continuous Integration and Continuous deployment using Azure DevOps Azure Pipeline Templates for SharePoint Framework Projects jest-preset-spfx-react16 - [Automated UI Test for SharePoint Solutions · Elio Struyf](https://www.eliostruyf.com/speaking/automated-ui-test-for-sharepoint-solutions/): On this page, you can find some related references for the “Automated UI Test for SharePoint Solutions” session which Elio presented together with Melanie Culver. Feedback If you want, you can provide feedback via the following form: feedback form. Link to the slides of where the session was presented 2-5 December 2019 – European SharePoint, Office 365 & Azure Conference Useful links Tools Puppeteer Robot Framework Selenium Changes to codsed UI tests in Visual Studio 2019 Recorders Katalon Recorder Puppeteer recorder Selenium IDE Other Tools node-sp-auth dependency Pixel matching Jest testing framework Code snippets node-sp-auth authentication for Puppeteer 1 2 3 4 5 import * as spauth from 'node-sp-auth'; const data = await spauth. - [How Pro Developers and Citizen Developers can team up - a #BetterTogether Story · Elio Struyf](https://www.eliostruyf.com/speaking/pro-developers-citizen-developers-team-bettertogether-story/): On this page, you can find some related references for the “How Pro Developers and Citizen Developers can team up - a #BetterTogether Story” session which was presented together with Luise Freese. Feedback If you want, you can provide feedback via the following form: feedback form. Abstract Audience: Business - DEV Level: 100 Co-speaker: Luise Freese No Code/Low Code applications like Microsoft Power Platform get more and more adopted by Citizen Developers in both small businesses and larger enterprises. - [Sharing code efficiently in your SharePoint Framework projects · Elio Struyf](https://www.eliostruyf.com/speaking/sharing-code-efficiently-sharepoint-framework-projects/): On this page, you can find some related references for the “Sharing code efficiently in your SharePoint Framework projects” session. Feedback If you want, you can provide feedback via the following form: feedback form. Link to the slides of where the session was presented 2-5 December 2019 – European SharePoint, Office 365 & Azure Conference 10 – 11 October 2019 – Office 365 & SharePoint Connect Community Edition Useful links Lerna Using library component type in SharePoint Framework Building solutions with the library component type in SharePoint Framework Why it is important to keep the version in sync when using the library component in SharePoint Framework - [Things I've learned while building a product on SharePoint Modern · Elio Struyf](https://www.eliostruyf.com/speaking/building-product-sharepoint-modern/): On this page, you can find some related references for the “Things I’ve learned while building a product on SharePoint Modern” session. Feedback If you want, you can provide feedback via the following form: feedback form. Sketch by Luise Freese Special thanks to Luise Freese for sketchnoting my session at ESPC 19. - [Speaking · Elio Struyf](https://www.eliostruyf.com/speaking/): Elio is a frequent Microsoft-related community event speaker, focusing on topics around M365, GitHub, E2E Testing, Azure, DevOps & more. ## Retrieving-the-cosmos-db-query-continuation-token-with-node-js - [Retrieving the CosmosDB query continuation token in Node.js · Elio Struyf](https://www.eliostruyf.com/retrieving-the-cosmos-db-query-continuation-token-with-node-js/): For one of our internal tools at Valo, I am creating a portal for managing our project localizations. The portal itself will be produced as a static website and hosted on Azure Static Web App. The great thing about Azure Static Web Apps is that it comes with hosting and the ability to create Azure Functions. ## Parse-application-www-form-urlencoded-form-data-azure-function - [Parse application/x-www-form-urlencoded in Azure Function · Elio Struyf](https://www.eliostruyf.com/parse-application-www-form-urlencoded-form-data-azure-function/): For a Mailchimp webhook, I had to parse the application/x-www-form-urlencoded form data to JSON. Azure Functions does not automatically do this for you, so you have to provide your parser. I knew that I had already done this, so I went on a search journey through my code. To make it easier next time, I wanted to share the code snippet with the rest of you. ## Netlify-vs-vercel-vs-azure-static-web-app - [Which service? Netlify vs Vercel vs Azure Static Web App · Elio Struyf](https://www.eliostruyf.com/netlify-vs-vercel-vs-azure-static-web-app/): I like to use static websites. It is fun to see that so many go back to the “old” way of working, but still try to find our ways to add our content dynamically. Retro tech is hip again Last year I made my move to static with my blog, which is now running on the Azure Storage static website option and powered by Hugo and do not regret it. ## Manual-github-workflow-triggers-azure-static-web-site - [Manual GitHub workflow triggers for Azure Static Web Site · Elio Struyf](https://www.eliostruyf.com/manual-github-workflow-triggers-azure-static-web-site/): In July 2020, GitHub released a new manual trigger feature for its GitHub Actions workflows. This trigger allows you to run a workflow from the UI, or you can also use it to run it via an HTTP POST request. The HTTP POST request option makes it very useful to trigger your workflow to run from an external system. ## Local-azure-static-web-app-development-easier - [How to make local Azure Static Web App development easier · Elio Struyf](https://www.eliostruyf.com/local-azure-static-web-app-development-easier/): Static sites are cool again (actually for a long time), and Microsoft knows that. Their new Azure Static Web App - App Service is currently in preview. At the moment, it still misses some key functionalities, but I am sure that these will get added once they put it in GA (hopefully to be announced at Ignite in September 2020). ## E2e-testing-microsoft-teams-solutions-cypress - [End-to-End testing your Microsoft Teams solutions with Cypress · Elio Struyf](https://www.eliostruyf.com/e2e-testing-microsoft-teams-solutions-cypress/): For a long time, I was looking for a way to start end-to-end test solutions in Microsoft Teams. The easiest way to start running these tests is against the web experience (https://teams.microsoft.com). That way, we can use tools like Cypress. Another reason to do these E2E tests with Cypress is that internally we use Cypress for all our E2E tests. ## Utility-functions-install-extra-dependencies-sharepoint-framework - [Utility functions which you might not know existed in SPFx · Elio Struyf](https://www.eliostruyf.com/utility-functions-install-extra-dependencies-sharepoint-framework/): Utility/helper functions, every project uses them, but how do you get them to your projects. For our products, we use a common/shared library private npm package. By sharing this package to all our products, we do not have to reinvent the wheel every time, but also have to fix things in one place when there is a bug. ## Ignoring-json-comment-errors-spfx-solutions - [Ignoring the JSON comment errors in your SPFx solutions · Elio Struyf](https://www.eliostruyf.com/ignoring-json-comment-errors-spfx-solutions/): Something that bothers me for a long time is the comments in the SharePoint Framework component JSON manifest files. As you may know, JSON does not allow you to add comments to its content. Visual Studio Code will show some errors for it as well. VSCode comment errors in JSON I understand that comments are needed. ## Uses - [My setup: get to know what I use · Elio Struyf](https://www.eliostruyf.com/uses/): Get to know what I use on a daily basis in my office to get most of my work done. In this article I share all hardware/software I use. ## My-review-of-the-jabra-evolve2-85-headset - [My review of the Jabra Evolve2 85 headset · Elio Struyf](https://www.eliostruyf.com/my-review-of-the-jabra-evolve2-85-headset/): For three months, I have waited for the Jabra Evolve2 85 to show up. During the Corona crisis, I needed a new headset to filter out all the noise my kids make at home, so that I could 100% focus on my work. A colleague told me about this headset. When I ordered it, it was not even out yet but was soon to be released. ## Developing-share-point-framework-solutions-outside-the-workbench - [Developing SharePoint Framework solutions outside the workbench · Elio Struyf](https://www.eliostruyf.com/developing-share-point-framework-solutions-outside-the-workbench/): I do not know how many times you use the workbench, but I rarely use it. It is not that I do not like it, as the workbench is useful, but I want to be able to test my solutions in “real” pages. This way, I can see how everything comes together. ## Stream-deck-review-people-stream-macos-extensibility - [Stream Deck review for people who do not play games or stream and use macOS · Elio Struyf](https://www.eliostruyf.com/stream-deck-review-people-stream-macos-extensibility/): During the Corona crisis, most of us had to work from home. One of the devices I saw people making a lot of fuss about was the Elgato Stream Deck. As the name suggests, it intends to make streaming easier to give you a set of buttons you can use for quickly triggering actions. ## Ringing-your-doorbell-on-your-sonos-speakers - [Ringing the doorbell on your Sonos speakers · Elio Struyf](https://www.eliostruyf.com/ringing-your-doorbell-on-your-sonos-speakers/): Ringing your doorbell on your Sonos speakers Ding dong!!! Earlier this week, I changed my old doorbell to the Eufy video doorbell. When it arrived and wanted to install it, I found out that my current wiring with the intercom system was not supported. Luckily the doorbell has a battery, so instead of running on power coming from the old wires, it will run on the battery for six months. ## Preserving-whitelisting-sharepoint-authentication-cookies-running-e2e-testing-cypress - [Preserving and whitelisting SharePoint authentication cookies while running E2E testing with Cypress · Elio Struyf](https://www.eliostruyf.com/preserving-whitelisting-sharepoint-authentication-cookies-running-e2e-testing-cypress/): In the previous article, I explained how you could trick Cypress and SharePoint to load the whole page instead of a page on which most of the SharePoint controls did not load. Related article: How to make your site believe it isn’t running in an iframe during Cypress E2E tests. ## Tests-running-iframe-cypress-e2e-tests - [How to make your site believe it isn't running in an iframe during Cypress E2E tests · Elio Struyf](https://www.eliostruyf.com/tests-running-iframe-cypress-e2e-tests/): Cypress is a fantastic front end testing tool but has one major limitation. I already blogged about it a while ago. The limitation is that it runs all tests within an iframe. This iframe approach makes sense, as it allows the tool to show the running tests and the page in one view. ## Things-which-only-happen-just-before-you-are-about-to-release - [Things which only happen just before you are about to release · Elio Struyf](https://www.eliostruyf.com/things-which-only-happen-just-before-you-are-about-to-release/): Hey team, are we ready to release? Yes, push the button and ship it. Why are all our tests failing? Why are our builds crashing? Why can I not access our services? Sounds familiar? It seems to be a common issue when you are just about to release your solution/project/product/… ## Cypress-test-sharepoint-solution-azure-ad-secured-api - [How to use Cypress to test your SharePoint solution with an Azure AD-secured API · Elio Struyf](https://www.eliostruyf.com/cypress-test-sharepoint-solution-azure-ad-secured-api/): How to use Cypress to test your SharePoint solution with an Azure AD-secured API In January 2020, I explained my approach to how you can make use of Cypress to test out your SharePoint solutions. Cypress is great to use and simple to configure. I like the capability of running individual tests on your local machine to verify if the solution is still working as expected once you implemented changes, and do full runs after nightly builds. ## Diy-building-busy-light-show-microsoft-teams-presence - [DIY: Building a busy light to show your Microsoft Teams presence · Elio Struyf](https://www.eliostruyf.com/diy-building-busy-light-show-microsoft-teams-presence/): For many of us, working from home is mandatory these days. For me, nothing major changed. I was already used to work from home since I joined Valo 2,5 years ago. One thing that has changed is that my children are now at home while I am working. Luckily I was prepared for it (I thought). ## Running-azure-devops-hosted-agent-wsl - [Running an Azure DevOps self-hosted agent on WSL · Elio Struyf](https://www.eliostruyf.com/running-azure-devops-hosted-agent-wsl/): Some time ago, I migrated my blog from Wordpress to a static site by Hugo. To generate the static pages, I make use of Azure DevOps pipelines. The free tier, which gives me up to 1800 minutes/month, is enough, but not this month. When I wanted to publish my blog post from yesterday, I got the following friendly message: ## Conditional-publish-packages-npm-github-actions - [Conditional publish packages to NPM via GitHub actions · Elio Struyf](https://www.eliostruyf.com/conditional-publish-packages-npm-github-actions/): While I was working on one of my hobby projects to automate our home with Homebridge, I wanted to have an easy way to publish my packages to NPM. I usually do this via Azure DevOps, but as one of the conditions to get the plugin verified is that it is published publically on GitHub, I wanted to give GitHub Actions a try. ## Multilingual-apis-modern-sharepoint - [Using the new multilingual APIs in Modern SharePoint · Elio Struyf](https://www.eliostruyf.com/multilingual-apis-modern-sharepoint/): Currently, the Multilingual page publishing for Modern SharePoint feature is rolling out to first-release tenants. This feature allows you to create pages on communications sites in different languages. These pages get linked to each other, and with a language switcher, you can navigate from language variant to variant. Info: Microsoft 365 Roadmap status on Multilingual page publishing for Modern SharePoint: https://www. ## Stickers - [Stickers · Elio Struyf](https://www.eliostruyf.com/stickers/): 🚨 STICKER ALARM 🚨 Since April 10th, 2020 I opened a new online sticker shop together with Luise Freese. #PYOD - Pimp Your Own Device Feel free to check out our start at: https://pimpyourowndevice.com/. New - Pimp Your Own Device - Sticker store. ## Showing-spinner-dynamically-loading-resources-spfx-property-pane - [Showing a spinner when dynamically loading resources for your SPFx property pane · Elio Struyf](https://www.eliostruyf.com/showing-spinner-dynamically-loading-resources-spfx-property-pane/): In your SharePoint Framework web parts, you have the option to load resources dynamically. These resources could be data you want to fetch or dynamically load controls before the property pane panel gets shown. To achieve this, you implement the logic in the loadPropertyPaneResources method. Info: You can find more information about dynamically loading controls here: Special property pane dynamic loading. ## Utilize-playwright-jest-cross-browser-e2e-test-solutions - [Utilize Playwright together with Jest to cross-browser E2E test your solutions · Elio Struyf](https://www.eliostruyf.com/utilize-playwright-jest-cross-browser-e2e-test-solutions/): On my journey to select the best tool for our end-to-end tests for our teams, I tested out the recently announced Playwright tool from Microsoft. This tool is the new version of Puppeteer (as the core team members moved to Microsoft). Info: The benefits of E2E tests are that it validates if your features work (or keep working when implementing changes), and also provides a more code-driven approach of documenting the features and user flows. ## Running-cypress-azure-devops-cross-browser-testing-solutions - [Running Cypress on Azure DevOps for cross-browser testing your solutions · Elio Struyf](https://www.eliostruyf.com/running-cypress-azure-devops-cross-browser-testing-solutions/): In my journey, selecting the best tool to automate the end-to-end tests for our products, I had been testing out Cypress for a while. Cypress is just a fantastic tool. It is easy to set up, documentation is up to date, and it makes it easy to verify features/implementations with its UI. ## Quick-tip-dynamic-variable-groups-azure-devops-yaml-pipelines - [Quick tip: How to use dynamic variable groups in Azure DevOps YAML pipelines · Elio Struyf](https://www.eliostruyf.com/quick-tip-dynamic-variable-groups-azure-devops-yaml-pipelines/): The preferred way to implement pipelines these days in Azure DevOps is via YAML. Which makes the pipeline part of your code and is automatically version controlled. When you were used to the classic way of creating release pipelines, you might have used environment scoped variables. These scoped variables were great to specify to which environments you wanted to provision/install/deploy/… your solutions. ## Best-practice-local-sharepoint-results-source-id-gain-search-control - [Best practice: specify the Local SharePoint results source ID to gain search control · Elio Struyf](https://www.eliostruyf.com/best-practice-local-sharepoint-results-source-id-gain-search-control/): When creating solutions based on SharePoint search, you best always define the source ID of the Local SharePoint results source with each call. By providing that source ID with each request, you make sure that the results you expect for your solutions are always the same. Which ID? The Local SharePoint results source ID you are looking for is: 8413cd39-2156-4e00-b54d-11efd9abdb89. ## Timer-trigger-azure-function-run-unforeseen-times- - [Why does your timer trigger Azure Function run at unforeseen times? · Elio Struyf](https://www.eliostruyf.com/timer-trigger-azure-function-run-unforeseen-times-/): Why does your timer trigger Azure Function run at unforeseen times? Has it ever happened that your timer triggered Azure Function was running on unforeseen times? We had it for two functions, and could not immediately find out where or why this was triggered more than once an hour. Timer function running multiple times per hour One of the functions should run once every hour, but as you can see, sometimes it runs more. ## Cypress-testing-sharepoint-solutions - [Using Cypress for end to end testing your SharePoint solutions · Elio Struyf](https://www.eliostruyf.com/cypress-testing-sharepoint-solutions/): Last year I already wrote an article about how you could implement visual UI tests for your SharePoint solutions by using Puppeteer in combination with Jest. I still use these tools for setting up various UI tests in our products, but a couple of months ago, a tool called Cypress caught my attention. ## Recap-2019-a-year-full-of-lessons - [Sometimes you just have to learn to let go - 2019 a year full of lessons · Elio Struyf](https://www.eliostruyf.com/recap-2019-a-year-full-of-lessons/): WHAT A YEAR! This year was a personal rollercoaster. I would have never thought 2019 would be so hard, fun, crazy, and filled with a lot of life lessons. Rollercoaster What happened in 2019? Initially, I told myself to do less travel in 2019, only attend a couple of events and focus a bit more on product development, family, and hobbies. ## Retrieving-image-focal-point-sharepoint-modern-page - [Retrieving the image its focal point of a SharePoint Modern page · Elio Struyf](https://www.eliostruyf.com/retrieving-image-focal-point-sharepoint-modern-page/): On SharePoint modern pages, you can set the focal point of the header image. Having this kind of control is excellent for creating compelling pages. Header image with focal point What if you also want to make use of the same focal point in your roll-ups? Luckily this is also possible, and it depends a bit on how you retrieve the data. ## Pnp-sharepoint-framework-react-controls-v-1-16-0-released - [PnP SharePoint Framework React controls v1.16.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v-1-16-0-released/): Version 1.16.0 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements FilePicker: Fixes for OneDrive CORS issues #407 ListItemPicker: added new control property filter #392 allowing to use context from any type of SPFx extensions: #419 Placeholder: remove unused and vendor specific CSS #426 Fixes ## Important-version-sync-library-component-sharepoint-framework - [Why it is important to keep the version in sync when using the library component in SharePoint Framework · Elio Struyf](https://www.eliostruyf.com/important-version-sync-library-component-sharepoint-framework/): A couple of months ago, I moved a couple of my projects to make use of the library component in SharePoint Framework. The library component allows you to share common logic between your projects. Sharing code through your projects is having many benefits like smaller bundle sizes, more comfortable to fix bugs, no code duplication, … ## Sessions - [Sessions 2023 · Elio Struyf](https://www.eliostruyf.com/sessions/): Additional information Role: Lead DevTools Engineer Company: Struyf Consulting Location: Belgium Website: https://www.eliostruyf.com Github: https://github.com/estruyf LinkedIn: https://linkedin.com/in/estruyf Twitter: https://twitter.com/eliostruyf GitHub Star: https://stars.github.com/profiles/estruyf/ MVP Nr: 5001411 Google Developer Experts: https://developers.google.com/profile/u/eliostruyf Picture Show image Link: Bio Elio Struyf has led a remarkable career as an award-winning Engineering Lead, a trusted information technology thought-leader, and an energizing public speaker with over a decade of experience facilitating events and conferences across Europe. ## Pnp-sharepoint-framework-react-controls-v-1-15-0-released - [PnP SharePoint Framework React controls v1.15.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v-1-15-0-released/): Version 1.15.0 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: New control(s) FilePicker: New control added to the library #366 GridLayout: New control added to the library #350 Carousel: New control added to the library #227 Enhancements ## Aborting-fetch-requests-spfx-extensions-navigation-events - [Aborting your fetch requests in your SharePoint Framework extensions during navigation events · Elio Struyf](https://www.eliostruyf.com/aborting-fetch-requests-spfx-extensions-navigation-events/): Once again an article about navigation events. This time it has nothing to do with checks you need to implement to know when or to which page you navigated. This time it is about canceling/aborting API calls which your browser performs while navigating to another page. Most likely you can cancel these calls because they do no longer matter for the current page. ## Speed-sharepoint-framework-builds-wsl-2 - [Speed up SharePoint Framework builds with WSL 2 · Elio Struyf](https://www.eliostruyf.com/speed-sharepoint-framework-builds-wsl-2/): SharePoint Framework builds very fast on new projects, but once you start adding more components or functionality, the builds quickly get slower. In our codebase, we tried to split up projects as much as possible, so that fewer components need to be built during your development cycle. As much as it helps with some projects, we still have two slow projects. ## Handling-page-creation-events-spfx-application-customizer - [Handling page creation events in your SPFx application customizer · Elio Struyf](https://www.eliostruyf.com/handling-page-creation-events-spfx-application-customizer/): Some time ago I wrote about things to check in your SharePoint Framework application customizer for making sure it behaves correctly on navigation events. This included checks to see if you navigated to another page, different hub site and site with another language. In most cases, these are the checks that you want to put in place, to make sure that your application customizer renders the right data after a navigation event. ## Sfpx-library-component-simplifying-localization-experience - [Using the SFPx library component for simplifying the localization experience · Elio Struyf](https://www.eliostruyf.com/sfpx-library-component-simplifying-localization-experience/): One of the things hardest things when creating and maintaining a product is localization. It requires a lot of testing, validation and follow-up. In SharePoint Framework projects it is no different, maybe even a bit harder, as the localization files are created per component. This means that you might have to take care of duplicate localization keys and labels. ## The-challenges-of-migrating-my-wordpress-site-to-hugo - [The challenges of migrating my Wordpress site to Hugo · Elio Struyf](https://www.eliostruyf.com/the-challenges-of-migrating-my-wordpress-site-to-hugo/): After almost three years, I finally made my over to a static site generated by Hugo. From the moment I started blogging in 2010, I used Wordpress. Wordpress was the best option back then. As the hosting company which I used only supported PHP, and I also got into coding by learning PHP when I was a student. ## Homepages-sharepoint-all-share-the-same-unique-id - [Homepages on Sharepoint all share the same unique ID · Elio Struyf](https://www.eliostruyf.com/homepages-sharepoint-all-share-the-same-unique-id/): It appears that some time ago (weeks/months), the unique ID of a SharePoint homepage is not unique anymore and is shared with other homepages pages in your environment. The problem occurs when creating new SharePoint sites. Once the site has been created, it will most likely share the same ID with a couple of other homepages. ## Contact - [Contact · Elio Struyf](https://www.eliostruyf.com/contact/): Let’s get in touch Hi there! Got a question for me? Awesome! Important things to keep in mind I do not accept guest articles on my blog. I’m not interested in hiring someone to make changes to my blog (e.g., developers, web designers, or SEO specialists). I might consider doing a product review if the product genuinely catches my interest. ## Resume - [Resume · Elio Struyf](https://www.eliostruyf.com/resume/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## About - [About me · Elio Struyf](https://www.eliostruyf.com/about/): Show image Elio Struyf on a cycling trip Elio Struyf has led a remarkable career as an award-winning Engineering Lead, a trusted information technology thought-leader, and an energizing public speaker with over a decade of experience facilitating events and conferences across Europe. Defined by his tenacity, expertise, and inspiring personal journey, Elio is driven to form authentic connections, share his specialist insights, and motivate professionals within the technology arena. ## How-to-get-the-hub-site-id-in-sharepoint-framework - [How to get the hub site ID in SharePoint Framework · Elio Struyf](https://www.eliostruyf.com/how-to-get-the-hub-site-id-in-sharepoint-framework/): When setting up a portal on SharePoint Online these days, you most likely will do it with a hub site driven approach. With hub sites, you have one root site collection, which can be seen as the parent, and all children are associated with it. Show image Hub site association When building solutions for your hub sites, you probably need to know on which hub site your solution is currently running. ## Pnp-sharepoint-framework-react-controls-v1-14-0-released - [PnP SharePoint Framework React Controls v1.14.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v1-14-0-released/): Version 1.14.0 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements German translations added for attachment and RichText controls #333 SecurityTrimmedControl: Added a wrapper className property for the parent element #325 ListPicker: Add ability to filter the control via OData #319 IFrameDialog: closing dialog on commit #313 WebPartTitle add support for section background color #258 Fixes ## Pnp-sharepoint-framework-property-controls-v1-16-0-released - [PnP SharePoint Framework Property Controls v1.16.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-16-0-released/): Version 1.16.0 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements PropertyFieldCollectionData: Add the ability for field validation to the custom fields #187 PropertyFieldCollectionData: Ability to provide custom labels for the save and cancel buttons #187 PropertyFieldListPicker: add ability to filter the control via OData #184 Fixes ## Simplify-localization-in-sharepoint-framework-projects - [Simplify localization in SharePoint Framework projects · Elio Struyf](https://www.eliostruyf.com/simplify-localization-in-sharepoint-framework-projects/): When you need to support multiple languages for your SharePoint Framework solutions. It can be a hassle that you have to maintain each and every localization per component in their related loc folder. Official localization documentation: localize SharePoint Framework client-side web parts. Show image Default component localization files If you have one component in your project, this is easy to maintain, but once you will have a couple more. ## Fixing-font-styling-issues-in-your-spfx-application-customizers - [Fixing font styling issues in your SPFx application customizers · Elio Struyf](https://www.eliostruyf.com/fixing-font-styling-issues-in-your-spfx-application-customizers/): This will be a quick tip about a styling issue with the application customizers. If you are building application customizers that render something in the available top or bottom zones. It is recommended to add your own font styles. This might sound weird, but when you don’t do this, you might end up with styling differences between your pages. ## Things-to-check-in-your-spfx-application-customizer-after-page-transitions - [Things to check in your SPFx application customizer after page transitions · Elio Struyf](https://www.eliostruyf.com/things-to-check-in-your-spfx-application-customizer-after-page-transitions/): When building a SharePoint Framework solution which includes application customizers. One of the important things about their functionality is how they behave during navigation events/page transitions. These days in modern SharePoint most of the page transitions are achieved from the client-side, which means that it does not fully reload the page, but only partially. ## Sharepoint-framework-bookmarklet-tool-for-quick-and-easy-debugging - [SharePoint Framework bookmarklet tool for quick and easy debugging · Elio Struyf](https://www.eliostruyf.com/sharepoint-framework-bookmarklet-tool-for-quick-and-easy-debugging/): A while ago I wrote an article about how you can quickly test and debug your SharePoint Framework code when it is already deployed on an environment. I use this technique quite a lot as I mostly work with application customizers. Info: Testing and debugging your SPFx solutions in production without causing any impact ## Pnp-sharepoint-framework-react-controls-v1-13-2-released - [PnP SharePoint Framework React Controls v1.13.2 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v1-13-2-released/): Version 1.13.2 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements Improvements to the Lithuanian localization #285 Fixes IFrameDialog: dimensions issue #303 DateTimePicker: IE11 layout issue #301 FileTypeIcon: Only displays PDF's in SPFx 1. ## Pnp-sharepoint-framework-property-controls-v1-15-0-released - [PnP SharePoint Framework Property Controls v1.15.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-15-0-released/): Version 1.15.0 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements PropertyFieldCollectionData: Add a property to be able to set a custom class on the collection data panel #180 PropertyFieldListPicker: Added listsToExclude property to the control #176 PropertyFieldDateTimePicker: Add ability to hide the date and time labels #77 Fixes ## Pnp-sharepoint-framework-react-controls-v1-13-1-released - [PnP SharePoint Framework React Controls v1.13.1 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v1-13-1-released/): Version 1.13.1 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Fixes WebPartTitle: Fix for className property which is not defined #281 RichText: Fix issue where control turns drop-downs black #279 Contributions This release wouldn’t be possible without the help of: Hugo Bernier. ## Pnp-sharepoint-framework-react-controls-v1-13-0-released - [PnP SharePoint Framework React Controls v1.13.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v1-13-0-released/): Version 1.13.0 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: New control(s) Progress: New control added #230 DateTimePicker: New control added #21 RichText: New control added #20 Enhancements ## Define-the-typescript-version-you-want-to-use-in-sharepoint-framework - [Define the TypeScript version you want to use in SharePoint Framework · Elio Struyf](https://www.eliostruyf.com/define-the-typescript-version-you-want-to-use-in-sharepoint-framework/): Since the release of SharePoint Framework 1.8.0, you will gain control over which TypeScript version to run in the build process. Until the release of 1.8.0 version, we were always tight to TypeScript version 2.4.2. There was no way to change this, as it was part of the internal SPFx build engine, but this has changed. ## Using-the-full-potential-of-react-in-sharepoint-framework-1-8-0 - [Using the full potential of React in SharePoint Framework 1.8.0 · Elio Struyf](https://www.eliostruyf.com/using-the-full-potential-of-react-in-sharepoint-framework-1-8-0/): A new version of SharePoint Framework was just released and one of the great things is that some of the dependencies were bumped. In version SPFx version 1.8.0, TypeScript was updated to 2.7.2 and React to 16.7.0. The React version is not even so old; it was released in December 2018 and comes with some handy features like lazy loading of components. ## Navigating-to-other-pages-in-sharepoint-framework-from-code - [Navigating to other pages in SharePoint Framework from code · Elio Struyf](https://www.eliostruyf.com/navigating-to-other-pages-in-sharepoint-framework-from-code/): When developing solutions with SharePoint Framework it can happen that you need to navigate to another page from code. Normally in JavaScript or TypeScript this is very easy. All you have to do is set the new location like this: location.href = ""; When you do this in SharePoint Framework, it has the side effect that it fully reloads the page you are navigating to. ## Pnp-sharepoint-framework-react-controls-v1-12-0-released - [PnP SharePoint Framework React Controls v1.12.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v1-12-0-released/): Version 1.12.0 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: New control(s) ListItemAttachments: New control added #177 IFramePanel: New control added #226 Enhancements ## How-to-let-the-warnings-not-fail-the-sharepoint-framework-build-process - [How to let the warnings not fail the SharePoint Framework build process · Elio Struyf](https://www.eliostruyf.com/how-to-let-the-warnings-not-fail-the-sharepoint-framework-build-process/): Something that is giving me some trouble for a long time is that the SharePoint Framework build process treads warnings as errors in production builds (when the –ship flag is present). Let’s start by giving some background information. During bundling/packaging of your SharePoint Framework solution, you could see two types of messages: ## Pnp-sharepoint-framework-property-controls-v1-14-1-released - [PnP SharePoint Framework Property Controls v1.14.1 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-14-1-released/): Version 1.14.1 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Fixes TaxonomyPicker: Terms are sorted incorrectly under the wrong parent #153 EnterpriseTermPicker: Terms are sorted incorrectly under the wrong parent #156 Try it out today Get the latest release of the @pnp/spfx-property-controls from npm by executing in the command line: npm i @pnp/spfx-property-controls -S -E. ## Better-logging-in-gulp-tasks-for-sharepoint-framework - [Better logging in gulp tasks for SharePoint Framework · Elio Struyf](https://www.eliostruyf.com/better-logging-in-gulp-tasks-for-sharepoint-framework/): When building custom gulp tasks in your SharePoint Framework solutions, it might be handy to log as the default build system does. More information about building custom gulp tasks can be found here: Integrate gulp tasks in SharePoint Framework toolchain When you would use the default console.log, console.warn,** **or console.error methods like this: ## Implementing-localization-file-checks-to-prevent-issues-in-sharepoint-framework-solutions - [Implementing localization file checks to prevent issues in SharePoint Framework solutions · Elio Struyf](https://www.eliostruyf.com/implementing-localization-file-checks-to-prevent-issues-in-sharepoint-framework-solutions/): If you are working on a SharePoint Framework solution which has to support multiple languages. You will already know that the localized labels are created in localization (resource) files which are “just” JavaScript files. There is actually nothing wrong with this approach in SharePoint Framework, although you could experience some issues with it. ## Using-the-latest-sharepoint-pnp-core-online-dependency-in-your-azure-functions - [Using the latest SharePoint PnP Core Online dependency in your Azure Functions · Elio Struyf](https://www.eliostruyf.com/using-the-latest-sharepoint-pnp-core-online-dependency-in-your-azure-functions/): Azure Functions are a great and easy way for implementing and automating tasks for your SharePoint Online environment. You could use it for various tasks like implementing scheduled jobs (timer jobs), elevating permissions via an API call to fetch/create data, … Starting to create new Azure Functions is simple with the Azure Functions project template in Visual Studio. ## Pnp-sharepoint-framework-property-controls-v1-14-0-released - [PnP SharePoint Framework Property Controls v1.14.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-14-0-released/): Version 1.14.0 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: New control(s) PropertyFieldEnterpriseTermPicker: New control to load term sets by using @pnp/pnpjs #70 #120 Enhancements ## Pnp-sharepoint-framework-react-controls-v1-11-0-released - [PnP SharePoint Framework React Controls v1.11.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v1-11-0-released/): Version 1.11.0 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: New control(s) Map: Newly introduced map control is available #14 ChartControl: Newly introduced control to render charts #15 Enhancements ## Setting-up-puppeteer-to-run-on-azure-devops-for-your-automated-ui-tests - [Setting up Puppeteer to run on Azure DevOps for your automated UI tests · Elio Struyf](https://www.eliostruyf.com/setting-up-puppeteer-to-run-on-azure-devops-for-your-automated-ui-tests/): A few weeks ago, I wrote about how you can use Puppeteer in combination with Jest to perform automated UI tests for your SharePoint solutions. In that article, you still had to run your tests manually start the tests. In this article, I will explain how you can automate this in Azure DevOps so that it can run on a schedule. ## Pnp-sharepoint-framework-property-controls-v1-13-1-released - [PnP SharePoint Framework Property Controls v1.13.1 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-13-1-released/): Version 1.13.1 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Fixes PropertyFieldCollectionData: Fixed issue for loading the control in the local workbench #128 Try it out today Get the latest release of the @pnp/spfx-property-controls from npm by executing in the command line: npm i @pnp/spfx-property-controls -S -E. ## Pnp-sharepoint-framework-property-controls-v1-13-0-released - [PnP SharePoint Framework Property Controls v1.13.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-13-0-released/): Version 1.13.0 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements Updated the office-ui-fabric-react to the same version as in SPFx 1. ## Testing-the-ui-of-your-spfx-solution-with-puppeteer-and-jest - [Testing the UI of your SPFx solution with Puppeteer and Jest · Elio Struyf](https://www.eliostruyf.com/testing-the-ui-of-your-spfx-solution-with-puppeteer-and-jest/): When building any type of solutions which involve a UI. One of the most time-consuming things is to test how your solution is rendered, and if everything is still working as it should be. If you are doing these changes yourself. The process is very simple and easy to maintain/test. When you are working in a larger team, things will get more complex and more manual work is involved in order to test it. ## Pnp-sharepoint-framework-property-controls-v1-12-0-released - [PnP SharePoint Framework Property Controls v1.12.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-12-0-released/): Version 1.12.0 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: New control(s) PropertyPaneWebPartInformation: New control to show more information about the current web part #108 PropertyPanePropertyEditor: New control that allows you to export/import property pane settings #114 Enhancements ## Pnp-sharepoint-framework-react-controls-v1-10-0-released - [PnP SharePoint Framework React Controls v1.10.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v1-10-0-released/): Version 1.10.0 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: New control(s) ListItemPicker: New field control #165 Enhancements Dutch localization added #100 ## Pnp-sharepoint-framework-property-controls-v1-11-0-released - [PnP SharePoint Framework Property Controls v1.11.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-11-0-released/): Version 1.11.0 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements PropertyFieldCollectionData: Show error messages #96 Fixes Fixes based on SonarCloud analysis ## Pnp-sharepoint-framework-property-controls-v1-10-0-released - [PnP SharePoint Framework Property Controls v1.10.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-10-0-released/): Version 1.10.0 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements PropertyFieldPeoplePicker: Security groups come back with EntityType of FormsRole rather then SecGroup #93 ## Pnp-sharepoint-framework-react-controls-v1-8-0-released - [PnP SharePoint Framework React Controls v1.8.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v1-8-0-released/): Version 1.8.0 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements PeoplePicker: Specify to hide or show the users/groups which are hidden in the UI #122 WebPartTitle: changing font-sizes on different resolutions #114 WebPartTitle: Added accessibility tags for web part title #121 ListView: Resizable columns - introduced a isResizable property #119 FieldNameRenderer double click support added #116 TaxonomyPicker: table markup changed to DIV #113 PeoplePicker: ability to specify the source site to load users from #110 TaxonomyPicker: Disable the terms which are set as deprecated or unavailable for tagging #109 PeoplePicker: Specify principle type to retrieve (users, groups, …) #94 Fixes ## Handling-navigation-in-a-sharepoint-framework-application-customizer - [Handling navigation in a SharePoint Framework application customizer · Elio Struyf](https://www.eliostruyf.com/handling-navigation-in-a-sharepoint-framework-application-customizer/): Probably one of the most difficult things when working with application customizers is how it behaves while navigating. Modern sites have their own page navigation mechanism which provides a great user experience as the page does not require a full-page refresh. Only the things that are changed will get loaded/unloaded from the page. ## Demystifying-the-mystery-behind-the-ui-language-in-sharepoint - [Demystifying the mystery behind the UI language in SharePoint · Elio Struyf](https://www.eliostruyf.com/demystifying-the-mystery-behind-the-ui-language-in-sharepoint/): Have you ever wondered what exactly determines in which language SharePoint will be loaded? In this article, I will explain what the flow is which determines the UI language. Site language settings It all starts with the supported languages on the site. You can check them out here: https:///_layouts/15/muisetng.aspx. Show image Site - Language Settings Be sure that the language you want to use is checked on in the list of alternate language(s). ## Automate-publishing-process-of-mkdocs-to-static-website-hosting-in-azure-storage-with-vsts - [Automate publishing process of MkDocs to Static Website hosting in Azure Storage with VSTS · Elio Struyf](https://www.eliostruyf.com/automate-publishing-process-of-mkdocs-to-static-website-hosting-in-azure-storage-with-vsts/): For Valo Intranet, we recently started using MkDocs (https://www.mkdocs.org/) for building our product documentation. The great part about MkDocs is that can generate a completely static HTML site based on Markdown files. This makes it easy to maintain and can live in a source-controlled environment. MkDocs is for example used in projects like Office 365 CLI, PnP SPFx React and Property controls for the documentation. ## Pnp-sharepoint-framework-react-controls-v1-7-0-released - [PnP SharePoint Framework React Controls v1.7.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v1-7-0-released/): Version 1.7.0 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements PeoplePicker: added functionality to initialize the control with person(s) or group(s) #98 PeoplePicker: support for searching on contains #93 PeoplePicker: find user based on email address #95 Bundle size: statically reference Office UI Fabric components in the FieldRenderer controls #107 Fixes ## Pnp-sharepoint-framework-property-controls-v1-9-0-released - [PnP SharePoint Framework Property Controls v1.9.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-9-0-released/): Version 1.9.0 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements PropertyFieldCollectionData: Added custom validation for string, number, icon, and URL field types #74 PropertyFieldCollectionData: Add an option to specify a default value #86 PropertyFieldCollectionData: override placeholder for the inputs #87 PropertyFieldCollectionData: Hide save button when “Add and save” is shown #88 Fixes ## Easily-run-sharepoint-framework-related-tasks-in-visual-studio-code - [Easily run SharePoint Framework related tasks in Visual Studio Code · Elio Struyf](https://www.eliostruyf.com/easily-run-sharepoint-framework-related-tasks-in-visual-studio-code/): Beginning of August 2018 I released a new Visual Studio Code extension called the SPFx Task Runner. This extension lets you run your SharePoint Framework related gulp tasks by just a couple of mouse clicks. Show image SPFx Task Runner Once you installed the extension you get a new SPFx task group in the Visual Studio Code context menu. ## Pnp-sharepoint-framework-property-controls-v1-8-0-released - [PnP SharePoint Framework Property Controls v1.8.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-8-0-released/): Version 1.8.0 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements New telemetry approach which allows you to use Application Insights instance #79 PropertyFieldListPicker add an optional property for target site #21 Contributions This release wouldn’t be possible without the help of: Joel Rodrigues. ## Pnp-sharepoint-framework-react-controls-v1-6-0-released - [PnP SharePoint Framework React Controls v1.6.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v1-6-0-released/): Version 1.6.0 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements Disabled property for PeoplePicker #88 Fixes New telemetry approach which allows you to use Application Insights #81 PeoplePicker property selectedItems not implemented? ## Pnp-sharepoint-framework-react-controls-v1-5-0-released - [PnP SharePoint Framework React Controls v1.5.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-react-controls-v1-5-0-released/): Version 1.5.0 of the SharePoint Framework React Controls (@pnp/spfx-controls-react) has been released. This is an open source library that shares a set of reusable React controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: New control(s) New PeoplePicker control added #19 Enhancements Added properties to the TaxonomyPicker to specify which terms are disabled/not-selectable #82 Fixes ## Pnp-sharepoint-framework-property-controls-v1-7-0-released - [PnP SharePoint Framework Property Controls v1.7.0 released · Elio Struyf](https://www.eliostruyf.com/pnp-sharepoint-framework-property-controls-v1-7-0-released/): Version 1.7.0 of the SharePoint Framework Property Controls (@pnp/spfx-property-controls) has been released. This is an open source library that shares a set of reusable property pane controls, which can be used in your SharePoint Framework solutions. This release includes the following changes: Enhancements Add npm postinstall script to automatically add the localization config #64 Add a description to the PropertyFieldCollectionData panel #67 Added a font field type for the PropertyFieldCollectionData control #66 Added a URL field type for the PropertyFieldCollectionData control #72 Field validation implemented to enable/disable save buttons in PropertyFieldCollectionData control. ## Sharepoint-framework-unit-tests-with-jest - [SharePoint Framework unit-tests with Jest · Elio Struyf](https://www.eliostruyf.com/sharepoint-framework-unit-tests-with-jest/): Back in April 2017, I wrote about how you could write unit tests for SharePoint Framework components. This was created by a combination of the dependencies provides by SharePoint Framework itself and enzyme (JavaScript Testing utilities for React). Info: you can read more about writing unit tests for SharePoint Framework components here: Writing unit tests for your SharePoint Framework components. ## Vat - [Struyf Consulting VOF · Elio Struyf](https://www.eliostruyf.com/vat/): Address Kattestraat 1 9120 Melsele Belgium VAT BE 0684.726.067 ## Speed-up-your-sharepoint-framework-build-and-release-process-in-vsts - [Speed up your SharePoint Framework build and release process in Azure DevOps · Elio Struyf](https://www.eliostruyf.com/speed-up-your-sharepoint-framework-build-and-release-process-in-vsts/): Automating your builds and releases for SharePoint Framework is easy to achieve on Azure DevOps. In the past, I have written how you can achieve it by using custom Gulp tasks or using the Office 365 CLI. One thing both solutions have in common is that they are taking 5-10 minutes to complete. ## Debug-your-sharepoint-framework-code-running-microsoft-edge-visual-studio-code - [Debug your SharePoint Framework code running in Microsoft Edge with Visual Studio Code · Elio Struyf](https://www.eliostruyf.com/debug-your-sharepoint-framework-code-running-microsoft-edge-visual-studio-code/): For a long time, you were not able to remotely debug your SharePoint Framework solutions running in Microsoft Edge with Visual Studio Code. This was due to limitations of the Debugger for Edge and the Microsoft Edge developer tools. The only possibility if you wanted to debug in Visual Studio Code, was to use Chrome in combination with the Debugger for Chrome Visual Studio Code extension. ## Using-the-office-365-cli-in-your-vsts-ci-cd-pipelines-for-sharepoint-framework-solutions - [Using the Office 365 CLI in your Azure DevOps CI/CD pipelines for SharePoint Framework solutions · Elio Struyf](https://www.eliostruyf.com/using-the-office-365-cli-in-your-vsts-ci-cd-pipelines-for-sharepoint-framework-solutions/): Automating installation/deployment processes of any type of solutions is so great, and on Azure DevOps you can do this by a task-driven process. For many of the SharePoint Solutions I create, I have an automated CI/CD process behind the scenes running. So that once my code is ready, it will automatically deploy to my test environment. ## Testing-and-debugging-your-spfx-solutions-in-production-without-causing-any-impact - [Testing and debugging your SPFx solutions in production without causing any impact · Elio Struyf](https://www.eliostruyf.com/testing-and-debugging-your-spfx-solutions-in-production-without-causing-any-impact/): Hey developer, the solution which was just deployed in production is not working. Can you have a look at and fix it? This is probably something which you might have heard before. As every user and environment are unique, it could be caused by different things. IMPORTANT: Use this approach to test and find out what is wrong. ## Getting-likes-and-comments-from-modern-pages - [Getting likes and comments from modern pages · Elio Struyf](https://www.eliostruyf.com/getting-likes-and-comments-from-modern-pages/): If you are using a modern site in SharePoint Online, you might have noticed that there is a new footer / social bar control which contains actions that allow you to like a page, see the number of comments and page views. Show image The social bar with like and comment capabilities This is a very simple control and might be useful to you when building some social solutions like for example when building your own news page roll-ups or controls. ## Using-sharepoint-renderlistdataasstream-api-fetch-lookup-single-managed-metadata-field-values - [Using the SharePoint RenderListDataAsStream API to fetch lookup and single managed metadata field values · Elio Struyf](https://www.eliostruyf.com/using-sharepoint-renderlistdataasstream-api-fetch-lookup-single-managed-metadata-field-values/): The SharePoint item REST API has its limits. One (or two in this case) of these limits is about returning values for fields you specified, more in particular when using lookup- or managed metadata fields. The problem with the lookup field occurs when it references a list from another web. In that case, the REST API will return an error message. ## Have-you-ever-thought-about-checking-your-dependency-for-vulnerabilities - [Have you ever thought about checking your dependency for vulnerabilities? · Elio Struyf](https://www.eliostruyf.com/have-you-ever-thought-about-checking-your-dependency-for-vulnerabilities/): We all have dependencies in our projects and you probably already read some articles about dependencies which include funky things to your project without you being aware of it. Sometimes we just include these libraries in our project just because they are cool, save us a lot of development time, or because it is a requirement. ## Check-page-mode-from-within-spfx-extensions - [Check the page display mode from within your SharePoint Framework extensions · Elio Struyf](https://www.eliostruyf.com/check-page-mode-from-within-spfx-extensions/): In my previous post, I wrote how you could trigger the page into edit mode from within your SharePoint Framework solution. One thing which I did not explain is how you can check the current display mode your page is in. Related article: Trigger the edit page experience from your SharePoint Framework solution ## Trigger-the-edit-page-experience-from-your-sharepoint-framework-solution - [Trigger the edit page experience from your SharePoint Framework solution · Elio Struyf](https://www.eliostruyf.com/trigger-the-edit-page-experience-from-your-sharepoint-framework-solution/): This is a quick article to show you how you can open the edit page experience from your SharePoint Framework solution. Such a trigger could be useful so that you can trigger the page its edit mode from within your web part, footer, … Nothing more to say about it, so here is the code: ## Custom-metadata-for-sharepoint-modern-pages - [Custom metadata for SharePoint modern pages · Elio Struyf](https://www.eliostruyf.com/custom-metadata-for-sharepoint-modern-pages/): UPDATE: Beginning of April 2018, Microsoft announced a new feature which allows custom metadata integration with modern pages and news (Office 365 Roadmap ID: 27251). Show image Custom metadata integration with modern SharePoint Online pages and news One of the key things in the content creation process is metadata. This important for various reasons, which I not going to discuss in this article. ## Sharepoint-framework-script-check-extension-visual-studio-code - [SharePoint Framework Script Check extension for Visual Studio Code · Elio Struyf](https://www.eliostruyf.com/sharepoint-framework-script-check-extension-visual-studio-code/): I published another extension for your SharePoint Framework solution to check your scripts and correctly reference the external JavaScript libraries in your solutions. The extension is powered by the same APIs of the SharePoint Framework Script Check that was built by Waldek Mastykarz from Rencore. Check out the VSCode extension: SPFx Script Check ## Get-to-know-on-which-type-of-site-your-sharepoint-framework-solution-is-running - [Get to know on which type of site your SharePoint Framework solution is running · Elio Struyf](https://www.eliostruyf.com/get-to-know-on-which-type-of-site-your-sharepoint-framework-solution-is-running/): Depending on the solution you are creating, you might want to know on which type of site your SharePoint Framework solution is currently running. This could be useful to enable or disable certain functionalities the solution you are creating depending on the type of site. For example: enable some extra collaboration features in your solution when used on a team site, and disable the features when used on a communication site. ## Sharepoint-framework-snippets-extension-visual-studio-code - [SharePoint Framework snippets extension for Visual Studio Code · Elio Struyf](https://www.eliostruyf.com/sharepoint-framework-snippets-extension-visual-studio-code/): Today I published a new Visual Studio Code extension that gives you some handy SharePoint Framework code snippets. The first version of the extension only contains a handful snippets but will grow over time. VSCode extension: SPFx snippets Show image SPFx snippets demo Try it out and let me know if you like it. ## Wrapping-year-2017-end-near - [Wrapping up the year 2017, and looking forward to 2018 · Elio Struyf](https://www.eliostruyf.com/wrapping-year-2017-end-near/): What a year! This year passed by so quickly, probably because a lot has happened this year personally and business-wise. Some career changes U2U and Valo Intranet (Blue Meteorite) The first article I wrote this year was about announcing that I was quitting my job as a consultant and start working as a trainer for U2U (Change is on the way) as of February 2017. ## Exclude-your-mock-data-and-other-modules-from-your-production-bundle-in-spfx - [Exclude your mock data and other modules from your production bundle in SPFx · Elio Struyf](https://www.eliostruyf.com/exclude-your-mock-data-and-other-modules-from-your-production-bundle-in-spfx/): When creating solutions with SharePoint Framework, in many cases you might want to call some API endpoints. Like for instance the SharePoint rest API or Microsoft Graph. To speed up your development, testing and overcome issues like CORS (cross-origin resource sharing). You might have implemented some mock data objects or mock services which return static data. ## How-to-debug-your-sharepoint-framework-unit-tests - [How to debug your SharePoint Framework unit-tests · Elio Struyf](https://www.eliostruyf.com/how-to-debug-your-sharepoint-framework-unit-tests/): The reason you probably read this post is that you already wrote some unit tests for SharePoint Framework projects and you stumble upon a problem and want to debug one of your unit-tests. Apparently, the process is not so easy as linking your debugger to the gulp test task. There is a bit more plumbing involved to get a good experience. ## Extend-karma-config-to-get-better-code-coverage-and-test-reports-for-your-sharepoint-framework-solutions - [Extend Karma to get better code coverage and test reports for your SharePoint Framework solutions · Elio Struyf](https://www.eliostruyf.com/extend-karma-config-to-get-better-code-coverage-and-test-reports-for-your-sharepoint-framework-solutions/): In one of the previous posts I showed that since SharePoint Framework version 1.2.0, code coverage reports were added. When you run the gulp test task, it will execute the tests, and generate a code coverage report which you can find under the temp/coverage/js project folder. Read more about this in the following article: SharePoint Framework code coverage reports for unit-tests ## How-to-load-scripts-that-are-required-for-your-item-display-template-rendering - [How to load scripts that are required for your item display template rendering · Elio Struyf](https://www.eliostruyf.com/how-to-load-scripts-that-are-required-for-your-item-display-template-rendering/): Based on the number of questions I receive in my mailbox, I can see that display templates are not yet forgotten. A long time ago, I wrote about how to correctly include scripts into your display templates. Read more: Correctly including scripts into your display templates The main issue when using the default functions (for example $includeScript) to include scripts into your templates, is that they are loading your scripts asynchronously. ## Using-base64-encoded-images-as-the-web-part-icon-in-sharepoint-framework - [Using base64 encoded images as the web part icon in SPFx · Elio Struyf](https://www.eliostruyf.com/using-base64-encoded-images-as-the-web-part-icon-in-sharepoint-framework/): Web part icons help you to distinguish your web part between all the others. Show image Modern client-side web parts SharePoint Framework provides use two options at this moment of specifying an icon: Office UI Fabric font icons (officeFabricIconFontName) Images by providing a URL (iconImageUrl) Info: Waldek Mastykarz wrote a great article about this a while ago. ## Sharepoint-framework-code-coverage-reports-for-unit-tests - [SharePoint Framework code coverage reports for unit-tests · Elio Struyf](https://www.eliostruyf.com/sharepoint-framework-code-coverage-reports-for-unit-tests/): A while ago I wrote an article about writing unit tests for your SharePoint Framework components. One of the missing things was a code coverage report to check how well you unit-test your codebase. Read more: Writing unit-tests for your SharePoint Framework components Apparently, with the v1.2.0 of SharePoint Framework they added a tool called Istanbul which can generate such reports. ## Creating-multi-component-bundles-in-sharepoint-framework-solutions - [Creating multi-component bundles in SharePoint Framework solutions · Elio Struyf](https://www.eliostruyf.com/creating-multi-component-bundles-in-sharepoint-framework-solutions/): One of the new things in the latest releases is the functionality to bundle multiple components into a single JavaScript bundle file. Quote: Multi-component bundles can make it easier to share code and logic across similar components, as well as reduce the overall size of your JavaScript since you only get one instance of the shared code. ## How-to-let-custom-property-pane-fields-enable-the-apply-button-in-sharepoint-framework - [How to let custom property pane fields enable the apply button in SharePoint Framework · Elio Struyf](https://www.eliostruyf.com/how-to-let-custom-property-pane-fields-enable-the-apply-button-in-sharepoint-framework/): Since the SharePoint Framework v1.2.0 release; it is now possible to let your custom property pane fields trigger the apply button in non-reactive property panes. Before this release, you had to implement your own logic to re-render the contents of your web part or use the reactive property pane. So, what changed? ## Automate-the-deployment-of-your-sharepoint-solution-package-in-the-app-catalog - [Automate the deployment of your SharePoint solution package in the App Catalog · Elio Struyf](https://www.eliostruyf.com/automate-the-deployment-of-your-sharepoint-solution-package-in-the-app-catalog/): Some time ago I wrote a couple of articles about how you can automate the process of releasing your SharePoint Framework solutions. This was achieved by two custom Gulp tasks to upload the static assets and solution package and a complete Visual Studio Team Services build and release pipeline. This process already saved me a lot of time, but since some time ago, I noticed that I had to manually deploy the solution package to get the latest version activated. ## Sharepoint-framework-breadcrumb-extension-sample-available - [SharePoint Framework breadcrumb extension sample available · Elio Struyf](https://www.eliostruyf.com/sharepoint-framework-breadcrumb-extension-sample-available/): When SharePoint 2013 got released there was something missing in the UI. There was no breadcrumb control anymore like in SharePoint 2010. A couple of clients and users were struggling finding their way on the site. In March 2013, I created a script that allowed you to transform the SharePoint text in the suite bar (on the left side) into a breadcrumb. ## Showing-or-hiding-sharepoint-framework-listview-custom-actions-based-on-permissions-and-selected-items - [Showing or hiding SharePoint Framework ListView custom actions based on permissions and selected items · Elio Struyf](https://www.eliostruyf.com/showing-or-hiding-sharepoint-framework-listview-custom-actions-based-on-permissions-and-selected-items/): With the latest release of the SharePoint Framework generator, they introduced extensions. These extensions provide you a way to extend the modern site experience in SharePoint. You can, for example, add your own headers and footers, override how fields are rendered and create some custom list actions. In this article, I will focus on how you can use the ListView Command Set extension to create your own custom list actions that are shown based on permissions and selected list items. ## Gulp-task-to-change-environment-settings-in-sharepoint-framework-projects - [Gulp task to change environment settings in SharePoint Framework projects · Elio Struyf](https://www.eliostruyf.com/gulp-task-to-change-environment-settings-in-sharepoint-framework-projects/): Since I wrote the article about how you could configure build and release pipelines in Visual Studio Team Services, I got a couple of people asking if it is possible to get different builds working on one tenant. When you build something with the SharePoint Framework and are ready to move from development (workbench) to test or production. ## Passing-arguments-with-custom-gulp-tasks-for-sharepoint-framework-projects - [Passing arguments with custom Gulp tasks for SharePoint Framework projects · Elio Struyf](https://www.eliostruyf.com/passing-arguments-with-custom-gulp-tasks-for-sharepoint-framework-projects/): If you ever created Gulp tasks which made use of arguments to specify certain configuration settings to be used during the execution. You probably made use of a module called yargs. The yargs module makes it easy to check if arguments are provided and to retrieve their values. If you are building your own custom Gulp tasks for your SharePoint Framework projects, you do not require this module. ## How-to-let-an-azure-function-know-something-failed - [How to let an Azure Function know something failed · Elio Struyf](https://www.eliostruyf.com/how-to-let-an-azure-function-know-something-failed/): Just a quick article about how you can let your Azure Function runtime know there was a problem during the execution. This is important when you are for example working with queue triggered functions. The default method to let your Azure Function know it has finished is the context.done() method. When you use the method like this: context. ## Perform-other-types-of-http-requests-with-httpclient-and-sphttpclient-in-spfx-projects - [Perform other types of HTTP requests with HttpClient and SPHttpClient in SPFx projects · Elio Struyf](https://www.eliostruyf.com/perform-other-types-of-http-requests-with-httpclient-and-sphttpclient-in-spfx-projects/): If you already used the HttpClient and SPHttpClient in your SharePoint Framework projects, you might have noticed that you have two types of request methods options: GET and POST. These two types of requests are the most used ones, but what if you want to use other HTTP methods like PUT, PATCH, DELETE? ## Configure-a-build-and-release-pipeline-for-your-sharepoint-framework-solution-deployments - [Configure a build and release pipeline for your SharePoint Framework solution deployments · Elio Struyf](https://www.eliostruyf.com/configure-a-build-and-release-pipeline-for-your-sharepoint-framework-solution-deployments/): In the previous article, I wrote how I achieved to setup a build and release pipeline to automate the publishing process of my SharePoint Framework app package and JS file to my environments. Info: Use build and release pipelines in VSTS to automate your SharePoint Framework deployments. In this article, I will focus on explaining the steps in detail how you can achieve it yourself. ## Use-build-and-release-pipelines-in-vsts-to-automate-your-sharepoint-framework-deployments - [Use build and release pipelines in Azure DevOps to automate your SharePoint Framework deployments · Elio Struyf](https://www.eliostruyf.com/use-build-and-release-pipelines-in-vsts-to-automate-your-sharepoint-framework-deployments/): A while ago I wrote two articles about how you can automate the publishing process of your SharePoint Framework scripts and solution package via custom gulp tasks. Info: you can find the articles here and here. These gulp tasks are already a great step forward but still, requires you to manually launch these gulp commands to push everything to your environments. ## Writing-unit-test-for-your-sharepoint-framework-components - [Writing unit tests for your SharePoint Framework components · Elio Struyf](https://www.eliostruyf.com/writing-unit-test-for-your-sharepoint-framework-components/): Last week I published a sample project on GitHub which shows how you can test your SharePoint Framework components with some predefined unit tests. Info: here is a link to the repo - https://github.com/estruyf/spfx-testing-wp The current sample is created with React. The unit tests are created only to test the actual component instead of the main web part. ## Consuming-an-azure-ad-secured-web-api-from-your-web-app-native-app - [Consuming an Azure AD secured web API from your web app / native app · Elio Struyf](https://www.eliostruyf.com/consuming-an-azure-ad-secured-web-api-from-your-web-app-native-app/): Probably one of the great things about App Service is that you can easily secure your applications via Azure Active Directory. Securing a Web API or API App can easily be achieved by enabling the app service authentication option and selecting Azure Active Directory. The express configuration only requires a few clicks until you have it all up and running. ## Calling-a-custom-webhook-trigger-in-an-azure-logic-app - [Calling a custom webhook trigger in an Azure Logic App · Elio Struyf](https://www.eliostruyf.com/calling-a-custom-webhook-trigger-in-an-azure-logic-app/): I am currently busy with preparations for my next course about development on Azure. One of the things that is covered in the course is Logic Apps. Today I was exploring the development options and what you could achieve by creating / integrating custom APIs. Custom APIs enable you to extend your logic app flow and there are two ways how you can do this: ## Get-the-sharepoint-site-behind-an-office-365-group-via-the-microsoft-graph - [Get the SharePoint site behind an Office 365 Group via the Microsoft Graph · Elio Struyf](https://www.eliostruyf.com/get-the-sharepoint-site-behind-an-office-365-group-via-the-microsoft-graph/): Back in January, I wrote an article about how you could retrieve the site URL of an Office 365 Group. Linked article: Get the site URL of an Office 365 Group via the Microsoft Graph The way how I achieved it back then was via calling the drive end-point and parsing the site URL from the response. ## Get-to-know-who-is-tracking-your-mails-via-the-microsoft-graph-and-azure-functions - [Get to know who is tracking your mails via the Microsoft Graph and Azure Functions · Elio Struyf](https://www.eliostruyf.com/get-to-know-who-is-tracking-your-mails-via-the-microsoft-graph-and-azure-functions/): We all get a lot of emails every day. Did you know that some of these emails are being tracked by others? There are various kinds of email trackers available, most of them work by inserting hidden images and/or changing the links in the mail by a tracking prefix. This allows them to see when and how many times you opened your email and which of the links you clicked from the mail. ## Sharing-my-managed-metadata-refiner-display-template - [Sharing my managed metadata refiner display template · Elio Struyf](https://www.eliostruyf.com/sharing-my-managed-metadata-refiner-display-template/): Do you have a refiner template that shows the refiners based on the hierarchy of a term set, or can you explain how to build it? These are probably two of the most asked questions I received the last couple of months/years. Back in 2015 I created such a template, but never shared it until today. ## Creating-and-renewing-your-microsoft-graph-webhook-subscriptions - [Creating and renewing your Microsoft Graph webhook subscriptions · Elio Struyf](https://www.eliostruyf.com/creating-and-renewing-your-microsoft-graph-webhook-subscriptions/): Webhooks are an easy way to do something when an event occurs. For example, when you want to do something when a new email is received. Currently, I have such a webhook subscription running which checks every mail for mail trackers. I just love to have control of my emails and know which of them are being tracked. ## Returning-other-types-data-like-html-via-javascript-azure-functions - [Returning other types of data like HTML via JavaScript Azure Functions · Elio Struyf](https://www.eliostruyf.com/returning-other-types-data-like-html-via-javascript-azure-functions/): A couple of weeks ago I wrote a simple Office add-in which just added a custom add-in command. An add-in command only requires that you specify an URL to a page / HTML file to make it work. As it would be overkill to create a website for just that one file, I thought about using an HTTPTrigger Azure Function to return me the necessary HTML for my command. ## Set-up-azure-storage-for-local-develop-of-timer-or-queue-triggered-azure-functions - [Setting up Azure Storage for local develop of timer or queue triggered Azure Functions · Elio Struyf](https://www.eliostruyf.com/set-up-azure-storage-for-local-develop-of-timer-or-queue-triggered-azure-functions/): These days I use Azure Functions quite a lot for automating things. Since the general availability of Azure Functions which was announcement back in November 2016, they are becoming even more popular and are being used for various kinds of things. Even the local development process of Azure Functions got a lot better. ## Automate-sharepoint-framework-solution-package-deployment - [Automate publishing of your SharePoint Framework solution package deployment · Elio Struyf](https://www.eliostruyf.com/automate-sharepoint-framework-solution-package-deployment/): This article is an addition to my previous one about how to automate the publication process of your JavaScript file to Office 365 public CDN. Related article: Automate publishing of your SharePoint Framework scripts to Office 365 public CDN Not long after I had published my previous article, I got the following question on Twitter: ## Automate-publishing-of-your-sharepoint-framework-scripts-to-office-365-public-cdn - [Automate publishing of your SharePoint Framework scripts to Office 365 public CDN · Elio Struyf](https://www.eliostruyf.com/automate-publishing-of-your-sharepoint-framework-scripts-to-office-365-public-cdn/): Last year Microsoft announce the Office 365 public CDN capability. This is CDN option from Office 365 is a great way for you to host your assets like images or JavaScript files. Most important, this is probably the easiest option for publishing your SharePoint Framework client-side web part assets. This is because it does not require you to setup anything on Azure. ## How-to-define-add-in-commands-in-an-outlook-module - [How to define add-in commands in an Outlook module · Elio Struyf](https://www.eliostruyf.com/how-to-define-add-in-commands-in-an-outlook-module/): In January, a colleague and I built our first Outlook module. With the Outlook module extensibility, which was announced at Build 2016, you can create your own applications/modules inside the Outlook client. By default, you have mail, calendar, tasks, but now you have also the ability to put other applications in it. ## Get-the-site-url-of-an-office-365-group-via-the-microsoft-graph - [Get the site URL of an Office 365 Group via the Microsoft Graph · Elio Struyf](https://www.eliostruyf.com/get-the-site-url-of-an-office-365-group-via-the-microsoft-graph/): Update Since 29/03/2017 I discovered a new API endpoint which makes retrieving the SharePoint site URL even easier. You can read all about it in the following article: Get the SharePoint site behind an Office 365 Group via the Microsoft Graph Original article One important piece of information I required for an application which I am currently building is the site URL of the Office 365 Group site. ## Get-to-know-to-which-office-365-groups-a-user-is-a-member-of-microsoft-graph - [Get to know of which Office 365 Groups a user is a member of (Microsoft Graph) · Elio Struyf](https://www.eliostruyf.com/get-to-know-to-which-office-365-groups-a-user-is-a-member-of-microsoft-graph/): Getting to know to which Office 365 groups users are a member of, is very useful information. You can use this information for building your own group applications or to keep a record where users have access to (governance / guest access). The way to retrieve the groups is already documented in the Microsoft Graph documentation, but it is a bit hidden and deserves more attention. ## Adding-guests-to-an-office-365-group-via-the-microsoft-graph-api - [Adding guests to an Office 365 Group via the Microsoft Graph API · Elio Struyf](https://www.eliostruyf.com/adding-guests-to-an-office-365-group-via-the-microsoft-graph-api/): In one of my previous posts I explained how you can retrieve external / guest users via the Microsoft Graph API. Last week someone asked me if I knew how you can add guest users to an Office 365 Group via the Microsoft Graph API. As this was also a requirement for one of my projects, I did some digging to find a way to make this possible. ## Change-is-on-its-way-leaving-consulting-behind-for-something-new - [Change is on its way, leaving consulting behind for something new · Elio Struyf](https://www.eliostruyf.com/change-is-on-its-way-leaving-consulting-behind-for-something-new/): For the past eight years, I worked as a consultant for Xylos and Ventigrate. I loved my job, I had great colleagues and worked on interesting projects. I am grateful for the opportunities and support I got while working for these companies. For some time now, I was thinking of heading in another direction. ## Retrieving-external-guest-users-via-the-microsoft-graph-api - [Retrieving external / guest users via the Microsoft Graph API · Elio Struyf](https://www.eliostruyf.com/retrieving-external-guest-users-via-the-microsoft-graph-api/): A project I was working involved retrieving all external / guest users that have been added to Office 365 and especially to Office 365 Groups. As it had to build in to an Office 365 application I choose to work with the Microsoft Graph. First thing I did was retrieving all users with the standard API call: ## Uploading-images-to-your-onedrive-with-powerapps - [Uploading images to your OneDrive with PowerApps · Elio Struyf](https://www.eliostruyf.com/uploading-images-to-your-onedrive-with-powerapps/): Since my last post, I got a couple of questions about uploading files to OneDrive or SharePoint. Last week I worked on a solution to find out how it “could” work(s). The only solution I found is not so elegant and it only works for OneDrive at the moment. There is no solution yet for SharePoint. ## Showing-a-spinner-when-loading-data-in-powerapps - [Showing a spinner when loading data in PowerApps · Elio Struyf](https://www.eliostruyf.com/showing-a-spinner-when-loading-data-in-powerapps/): This week I built my first application with PowerApps for our company. I wanted to create it via PowerApps to finally see its capabilities and to use it as a showcase for our customers. I must say that it is quite powerful, but some things are not so convenient and can be simplified. ## What-makes-a-page-to-be-a-news-page-on-sharepoint-online - [What makes a page to be a news page on SharePoint Online · Elio Struyf](https://www.eliostruyf.com/what-makes-a-page-to-be-a-news-page-on-sharepoint-online/): Yesterday our tenant got the new team news functionality. This functionality allows you to write news in your team site which gets published on the homepage or via the new news headlines web part. Show image Team news functionality Info: SharePoint Online “team news” begins roll out to Office 365 First Release customers - https://techcommunity. ## Getting-up-to-speed-with-webpack - [Getting up to speed with webpack · Elio Struyf](https://www.eliostruyf.com/getting-up-to-speed-with-webpack/): Show image webpack After the introduction of Node.js, npm, Gulp and Yeoman. It is time to spend some time on another tool called webpack. Webpack is a module bundler and is one of the tools which is used in the building process of a SharePoint Framework client-side web part. ## Sample-node-js-sharepoint-webhook-application-released - [Sample Node.js SharePoint webhook application released · Elio Struyf](https://www.eliostruyf.com/sample-node-js-sharepoint-webhook-application-released/): A month ago Microsoft announced that the SharePoint webhook functionality is available in developer preview Info: here is the official article - SharePoint Webhooks Developer Preview - Now Available! To test out the functionality myself. I created a sample Node.js application which is available in the SharePoint developer samples repository: Sample Node. ## Developing-and-testing-node-js-azure-functions-locally - [Developing and testing JavaScript / Node.js Azure Functions locally · Elio Struyf](https://www.eliostruyf.com/developing-and-testing-node-js-azure-functions-locally/): Azure functions are available for a while now. Their purpose is to have an event-driven compute without maintaining any server or applications. On my Azure environment, I have various of these small functions running. They all do different things like keeping my Azure search index up to date, sending notifications about my NPM packages, etc. ## Moving-your-database-to-the-mysql-in-app-option-in-azure - [Moving your database to the “MySQL in App” option in Azure · Elio Struyf](https://www.eliostruyf.com/moving-your-database-to-the-mysql-in-app-option-in-azure/): I have been running this blog since 2010. Over the years I have switched from a couple of hosting providers. Since two years I completely moved to Azure for hosting my site. The experience in performance and configuration is much better compared to the others, the only downside was the MySQL database. ## Search-for-office-365-group-documents - [Search for Office 365 Group documents · Elio Struyf](https://www.eliostruyf.com/search-for-office-365-group-documents/): I just got a question from someone who wanted to know how to retrieve all the Office 365 Group documents he had access to. When you are having a lot of groups in your organization, files could be spread across them. Search is in most cases the answer to finding your documents easily. ## Toggle-settings-in-the-property-pane-of-your-sharepoint-framework-web-part - [Toggle settings in the property pane of your SharePoint Framework web part · Elio Struyf](https://www.eliostruyf.com/toggle-settings-in-the-property-pane-of-your-sharepoint-framework-web-part/): With the SharePoint Framework it is fairly easy to configure the properties you want to expose in the property pane of your web part. All you have to do is specify each of the property pane fields you want to show in the propertyPaneSettings function underneath the groupFields property. Show image propertyPaneSettings function There are various types of property pane fields like text, dropdown, toggle, checkbox, and if that is not enough or you need a special one, you have the ability to build it yourself. ## Search-web-part-created-with-sharepoint-framework - [Search web part created with the SharePoint Framework · Elio Struyf](https://www.eliostruyf.com/search-web-part-created-with-sharepoint-framework/): Important I have created a new version of this web part that makes use of Handlebars templates. You can check out the code from this web part here: https://github.com/estruyf/react-handlebars-search. Older version of the web part Today I spend some time developing with the new SharePoint Framework. I must say the SharePoint team did an amazing job with creating the Yeoman template. ## How-to-debug-your-sharepoint-framework-web-part - [How to debug your SharePoint Framework web part · Elio Struyf](https://www.eliostruyf.com/how-to-debug-your-sharepoint-framework-web-part/): Already a great number of blog posts have been written about the new SharePoint Framework release two days ago. With every new tool or framework, there is a learning curve. The best way of learning how the SharePoint Framework works is by reading the code and debugging it. This article focusses on how you can quickly debug your web part created with the SharePoint Framework. ## Getting-up-to-speed-with-yeoman-aka-yo - [Getting up to speed with Yeoman aka “yo” · Elio Struyf](https://www.eliostruyf.com/getting-up-to-speed-with-yeoman-aka-yo/): Yeoman is yet another tool that you cannot miss in your client-side development toolset. In the previous post, I talked about Node.js, npm and Gulp. To make use of these tools it required some manual actions/configuration before you could start developing your project. By now you may have asked yourself if this is always the case with every new project you are going to create. ## Getting-up-to-speed-with-gulp - [Getting up to speed with Gulp · Elio Struyf](https://www.eliostruyf.com/getting-up-to-speed-with-gulp/): This is the next article of my getting up to speed series. This article is completely devoted to Gulp. In the previous article I explained Node.js and NPM, but I also mentioned Gulp a couple of time. As you get in this world of JavaScript focussed development, you will see that Gulp (or Grunt - depending on the developers’ preference) often used for various kind of things. ## Getting-up-to-speed-with-node-js-and-npm - [Getting up to speed with Node.js and npm · Elio Struyf](https://www.eliostruyf.com/getting-up-to-speed-with-node-js-and-npm/): Recently Microsoft announced the SharePoint framework. This framework makes use of the latest trends in the developer landscape like client-side development and integrating open source frameworks. For many of us, this was great news. The framework will be a great way to build new things for SharePoint. Of course, the SharePoint framework requires you to learn a couple of development tools with which you might not yet be familiar with. ## Things-to-check-when-something-went-wrong-with-your-display-template - [Things to check when something went wrong with your display template · Elio Struyf](https://www.eliostruyf.com/things-to-check-when-something-went-wrong-with-your-display-template/): Show image Default message when there is a problem with your template I receive a lot of questions about why display templates are not working or why managed properties do not contain a value. Most of the times the solution is similar to what has been already asked before, so I thought of writing this down in order that it can help everyone with similar issues. ## A-better-way-for-search-synonyms-in-sharepoint-online-2013-2016 - [A better way for search synonyms in SharePoint Online/2013/2016 · Elio Struyf](https://www.eliostruyf.com/a-better-way-for-search-synonyms-in-sharepoint-online-2013-2016/): Last year I did a couple of session about how to improve the search experience in your environment. In this session, I highlighted a couple of simple things that mostly stay untouched and things that can be quickly implemented. One of these key takeaways was implementing synonyms. Configuring synonyms can be done via the thesaurus functionality and works on-premises differently than on SharePoint Online. ## A-new-way-of-developing-display-templates - [A new way of developing display templates · Elio Struyf](https://www.eliostruyf.com/a-new-way-of-developing-display-templates/): Creating display templates for SharePoint is a fairly easy job, but we all have our own ways of developing them. Over the last couple of months, I barely touched managed code. Everything I do these days is mainly achieved by using JavaScript and/or TypeScript in combination with Visual Studio Code. As I really like this new way of working, I started testing how this could ease my display template development process and it turned out to be very useful. ## Create-a-compose-form-mail-add-in-for-outlook-with-the-office-developer-tools-update-2 - [Create a compose form mail add-in for Outlook with the Office Developer Tools update 2 · Elio Struyf](https://www.eliostruyf.com/create-a-compose-form-mail-add-in-for-outlook-with-the-office-developer-tools-update-2/): A couple of weeks ago the Office Developer Tools received its second update. These tools include the latest Office add-in project template that help you create add-ins for Excel, Word, Outlook, … Info: The Office developer tools for Visual Studio can be found here - https://www.visualstudio.com/en-us/features/office-tools-vs.aspx With the help of these tools, you should get up and running with Office Add-in development in no time. ## Create-azure-function-to-update-your-azure-search-index - [Create an Azure Function to update your Azure Search Index · Elio Struyf](https://www.eliostruyf.com/create-azure-function-to-update-your-azure-search-index/): A couple of months ago I switch from the default WordPress search functionality to Azure search. In order to update my Azure search index, I created a web job which runs every hour and adds or updates the latest 25 posts. Each night the web job will do a full re-index of all the articles. ## Sharepoint-saturday-belgium-2016-coming - [SharePoint Saturday Belgium 2016 is coming! · Elio Struyf](https://www.eliostruyf.com/sharepoint-saturday-belgium-2016-coming/): Show image SPSBE 2016 The BIWUG board is proud to announce the sixth edition of SharePoint Saturday Belgium. This year the event will take place in Brussel on October 15th, 2016. Where will it take place? We listened to your feedback about the venue from last year and we went on a search for a new and even better location. ## Rendering-video-results-with-the-use-of-display-templates - [Rendering video results with the use of display templates · Elio Struyf](https://www.eliostruyf.com/rendering-video-results-with-the-use-of-display-templates/): Last week when I was configuring a content search web part to show the latest videos from the Office 365 Video Portal. I saw that the default video template which is available is not so feature rich as I expected. The default video display template shows only a preview image with a link to the actual video. ## Starter-javascript-display-templates-for-your-projects - [Starter JavaScript display templates for your projects · Elio Struyf](https://www.eliostruyf.com/starter-javascript-display-templates-for-your-projects/): A while ago I wrote a post about my 10 tips and tricks when working with display templates. Info: you can find the article here: My 10 SharePoint display template tips and tricks In that article, I highlighted two ways of how you could provision your display templates to a SharePoint site. ## Speaking-spc-adriatics-sps-stockholm-paris - [Speaking at SPC Adriatics, SPS Stockholm & Paris · Elio Struyf](https://www.eliostruyf.com/speaking-spc-adriatics-sps-stockholm-paris/): The month May will be a busy this year with a couple of speaking engagements. A few of weeks ago I fantastic news that I was selected as a speaker for SPC Adriatics (http://www.spcadriatics.com/). This conference will be held from May 31 to June 1. Early bird registration is still open till 31 March, so if you want, you can reserve your spot here: registration. ## Using-new-theming-engine-sharepoint-online - [Using the new theming engine on SharePoint Online · Elio Struyf](https://www.eliostruyf.com/using-new-theming-engine-sharepoint-online/): Microsoft is currently rolling out a new theming engine for SharePoint Online. The difference between this new engine and the old one is that all the theme CSS changes are applied at runtime. The old engine processed all the CSS files that could be themed and stored them in the database. ## Sharepoint-konferenz-2016-wrap - [SharePoint Konferenz 2016 wrap-up · Elio Struyf](https://www.eliostruyf.com/sharepoint-konferenz-2016-wrap/): This week I spoke at the SharePoint Konferenz in Erding, Germany. It was not a very big conference, but that does not mean that it cannot be great. The speaker line-up was amazing and the attendees were very engaging. Info: here is a link to the event site - http://sharepointkonferenz.de/2016/en/ ## Sending-mails-embedded-images-via-microsoft-graph - [Sending mails with embedded images via the Microsoft Graph · Elio Struyf](https://www.eliostruyf.com/sending-mails-embedded-images-via-microsoft-graph/): The Microsoft Graph keeps getting better and better. Since it was released, a lot more endpoints and functionality has been added. In one of my applications I make use of the sendMail endpoint to send notification about progress updates. I wanted to improve the notification mail by embedding images into the mails. ## Loading-css-display-templates - [Loading CSS from your display templates · Elio Struyf](https://www.eliostruyf.com/loading-css-display-templates/): A while ago I wrote an article about how to correctly include scripts in your Display Templates. As the $include functions load files asynchronously on the page, it could happen that the JavaScript file is not loaded yet when you need it. Info: here is the link to the article - correctly including scripts into your display templates. ## Search - [Search for articles · Elio Struyf](https://www.eliostruyf.com/search/): Azure / Microsoft 365 / Visual Studio Code / Speaker / Blogger ## Highlight-premises-search-results-hybrid-configuration - [Highlight on-premises search results in your hybrid configuration · Elio Struyf](https://www.eliostruyf.com/highlight-premises-search-results-hybrid-configuration/): Last week I finally found some time to get my demo tenant up and running with hybrid search configuration. The new hybrid search experience eliminates the need of the result block. All results are aggregated together right now. So that means if you do a search query, you could get SharePoint Online results and on-premises results. ## Offset-classes-coming-office-ui-fabric - [Offset classes are coming to Office UI Fabric · Elio Struyf](https://www.eliostruyf.com/offset-classes-coming-office-ui-fabric/): A week ago I submitted a pull request to the Office UI Fabric repository to include a new set of offset classes. These offset classes could come in handy when you want to position your elements on the page. Info: here you can see the details of the pull request - https://github. ## Do-something-after-all-refiners-templates-are-rendered - [Do something after all refiners templates have completed rendering · Elio Struyf](https://www.eliostruyf.com/do-something-after-all-refiners-templates-are-rendered/): If you created your own display templates, you most probably have used the AddPostRenderCallback function. The AddPostRenderCallback function allows you to execute code once the display template completed rendering and this function can be used in every template (control, item, …). Now when you are creating your own refiner display templates and want to do something once all the refiners are rendered, the first approach would be to create a AddPostRenderCallback function in the refinement control template. ## Office-ui-fabric-responsive-grid-breakpoints-pushpull-and-other-available-classes - [Office UI Fabric responsive grid: breakpoints, push/pull and other available classes · Elio Struyf](https://www.eliostruyf.com/office-ui-fabric-responsive-grid-breakpoints-pushpull-and-other-available-classes/): At the moment the documentation for Office UI Fabric is focussed on Office Add-ins. For example: if you check the grid styles, there is mentioned that there are utility classes for small, medium and large devices, but there is more functionality hidden inside the SASS/CSS files. In this article I will describe a couple of very useful CSS classes which you can use when building your own applications with the Office UI Fabric framework. ## Using-office-theme-colors-add - [Using Office theme colors in your add-in · Elio Struyf](https://www.eliostruyf.com/using-office-theme-colors-add/): Will I was doing some preparation for a new talk about how you can make use of the Office UI Fabric in your applications/add-ins. I found a session from Connect() from Humberto Lezama Guadarrama which shows you what UI Fabric is and how to use it (Office UI Fabric - Connect()). ## Happy-new-year-2016 - [Happy New Year 2016 · Elio Struyf](https://www.eliostruyf.com/happy-new-year-2016/): Wishing you all a fruitful and prosperous new year. The year 2015 was just fantastic. I attended great events and conferences in Europe and the United States. I have been awarded my first MVP award in April and made a couple of new friends. Hope to see you all again in 2016. ## Things-to-know-when-creating-subscriptions-via-the-microsoft-graph-api - [Things to know when creating subscriptions via the Microsoft Graph API · Elio Struyf](https://www.eliostruyf.com/things-to-know-when-creating-subscriptions-via-the-microsoft-graph-api/): Now that webhooks are supported on the beta endpoint of the Microsoft Graph, I wanted to put it to the test and see how I could leverage it in my application. For one of my hobby projects built with Node JS, I wanted to show notifications when something changed in my calendar. ## Publishing-web-projects-from-visual-studio-code-to-azure-with-git - [Publishing web projects from Visual Studio Code to Azure with Git · Elio Struyf](https://www.eliostruyf.com/publishing-web-projects-from-visual-studio-code-to-azure-with-git/): For a hobby project which I was creating with Node.js and Visual Studio Code, I was amazed about how powerful the Visual Studio Code has gotten in such a short time period. Most of us know how easy it is when you publish one of your web projects from Visual Studio to Azure. ## Building-daemon-or-service-app-with-the-microsoft-graph-api - [Building daemon or service app with the Microsoft Graph API · Elio Struyf](https://www.eliostruyf.com/building-daemon-or-service-app-with-the-microsoft-graph-api/): In my previous blog post I described the process how to create all day events with the Microsoft Graph API. I used this method for synchronizing an external planning system to Office 365. This enabled our users to go to a MVC site and manually start the synchronization process. The next thing on my to-do list was to create a daemon or service application which performs a synchronization on a scheduled basis via an Azure WebJob. ## Creating-all-day-events-with-the-microsoft-graph-on-office-365 - [Creating all day events with the Microsoft Graph on Office 365 · Elio Struyf](https://www.eliostruyf.com/creating-all-day-events-with-the-microsoft-graph-on-office-365/): Over the last couple of months I developed a calendar application that synchronized events from an external system to a user’s calendar in Office 365. For the event creation process I made use of the Microsoft Graph previous known as the Unified API which was still in beta at that time. ## Allow-empty-search-queries-from-your-search-box - [Allow empty search queries from your search box · Elio Struyf](https://www.eliostruyf.com/allow-empty-search-queries-from-your-search-box/): This article explains a quick tip how you can allow empty search queries. This functionality is necessary when you have pages on which you configured the search web parts to use predefined queries in order to show results when the page gets loaded. Note: This could be either configured in the web part itself or via a result source. ## Hiding-the-cswp-title-when-there-are-no-results - [Hiding the content by search web part (title) when there are no results · Elio Struyf](https://www.eliostruyf.com/hiding-the-cswp-title-when-there-are-no-results/): If you are using content by search web part (CSWP), it might sometimes happen that no results are retrieved for a particular query. When this happens, the CSWP will by default not render any mark-up, but you can also configure the web part to show a message when no results are retrieved. ## Getting-past-the-cswp-item-limit-of-50-results - [Getting past the CSWP item limit of 50 results · Elio Struyf](https://www.eliostruyf.com/getting-past-the-cswp-item-limit-of-50-results/): The search result web part and content by search web part share the same item result limit of a maximum of 50 items that can be shown. If you want to show more items, the only option you have out-of-the-box is using a control template that allows paging (like List with paging for the CSWP). ## Displaying-the-users-profile-picture-in-your-office-365-add-in - [Displaying the user’s profile picture in your Office 365 add-in · Elio Struyf](https://www.eliostruyf.com/displaying-the-users-profile-picture-in-your-office-365-add-in/): For one of our internal Office 365 add-ins I wanted to display the user’s profile picture via the Office 365 Unified APIs. Note: At the moment there is not much documentation about the Unified API and retrieving the user’s profile picture. You could fall back on the documentation about the Outlook User Photo REST API. ## People-refinement-made-easy-by-adding-profile-pictures - [People refinement made easy by adding profile pictures · Elio Struyf](https://www.eliostruyf.com/people-refinement-made-easy-by-adding-profile-pictures/): In various SharePoint environments I see that clients mostly use the predefined refiners that you get from an out of the box search center. These refiners could of course help your users to find the right results, but they can always be made better. The author refiner for example can simply be more useful by adding the user his or her profile picture next to their name. ## Important-managed-properties-for-rendering-people-results - [Important managed properties for rendering people results · Elio Struyf](https://www.eliostruyf.com/important-managed-properties-for-rendering-people-results/): For a client, my colleague and I were creating a new “who is who” functionality on their intranet via a couple search web parts. In order to show the full profile of a user we created a new page with a content by search web part that showed a single user result. ## Merge-search-results-from-multiple-search-web-parts-together - [Merge search results from multiple search web parts together · Elio Struyf](https://www.eliostruyf.com/merge-search-results-from-multiple-search-web-parts-together/): Over the past months I received the same question a couple of times from customers and blog readers if there way to specify the number of search results per category / division / department. Their requirement was to display for example three global news articles and two news articles from the division the user belongs. ## Tiles-display-templates-added-to-the-spcsr-repo - [Tiles display templates added to the SPCSR repo · Elio Struyf](https://www.eliostruyf.com/tiles-display-templates-added-to-the-spcsr-repo/): Right before my vacation I released new display templates in the SPCSR GitHub repository. These display templates can be used to visualize results as tiles. The tiles are build the same way the promoted links web part. Show image Search tiles Show image Search tile hover effect The display template has the following configurable managed properties: ## Speaking-at-sharepoint-saturday-munich-and-oslo - [Speaking at SharePoint Saturday Munich and Oslo · Elio Struyf](https://www.eliostruyf.com/speaking-at-sharepoint-saturday-munich-and-oslo/): I am pleased to announce two other events where I will be speaking in October. #SPSMuc - October 10, 2015 Munich will be something special, it will be the first time that Thomas Vochten and I will do a session together. We are going to do a session about SharePoint Search targeted for the IT Pro and Developer audience. ## Speaking-at-sharepoint-saturday-london-and-barcelona - [Speaking at SharePoint Saturday London and Barcelona · Elio Struyf](https://www.eliostruyf.com/speaking-at-sharepoint-saturday-london-and-barcelona/): I am pleased to tell you that I will be speaking at two new SharePoint Saturday events in London and Barcelona. #SPSLondon - July 11, 2015 In London I will do a new session about my tips and trick for creating search display templates. Search display templates tips and tricks (lvl: 200) Everyone has its own ways on creating display templates for SharePoint. ## Optimizing-the-number-of-display-templates-that-get-loaded-for-the-search-result-web-part - [Optimizing the number of display templates that get loaded for the search result web part · Elio Struyf](https://www.eliostruyf.com/optimizing-the-number-of-display-templates-that-get-loaded-for-the-search-result-web-part/): This week I saw a question on StackExchange about optimizing a search page and how to get rid of the pre-loaded display templates. You can quickly check the templates that get pre-loaded by opening an OOTB SharePoint search center results page, and checking the loaded scripts via Fiddler or your browser developer tools. ## Display-publishing-image-with-a-link-correctly-within-a-display-template - [Display publishing image with a link correctly within a display template · Elio Struyf](https://www.eliostruyf.com/display-publishing-image-with-a-link-correctly-within-a-display-template/): When you create a display template that displays a publishing image (example: the roll-up image of a page) it might be that you used the Srch.ContentBySearch.getPictureMarkup() function of SharePoint. This function is also used in the standard display templates like for example: Item_Picture3Lines.html. This Srch.ContentBySearch.getPictureMarkup provides you the markup for rendering the image with the image rendition of your choice. ## Help-your-users-by-providing-additional-search-combinations - [Help your users by providing additional search combinations · Elio Struyf](https://www.eliostruyf.com/help-your-users-by-providing-additional-search-combinations/): In my session about improving your SharePoint search experiences that I presented at SPSBE and SPSParis, I discussed various tips and tricks to improve the search experience for a user. One of these tips was about visualizing other search keyword combinations. One of the problems users may experience is that they do not know which keywords to enter for their search queries. ## Search-javascript-calls-not-working-for-anonymous-users-and-how-to-fix-it - [Search JavaScript calls not working for anonymous users and how to fix it · Elio Struyf](https://www.eliostruyf.com/search-javascript-calls-not-working-for-anonymous-users-and-how-to-fix-it/): Back in December 2013 I wrote an article in which I explained how you could dynamically switch the result source with a search query keyword. Note: You can find the article over here - Dynamically changing the result source in a SharePoint 2013 search center. The past few weeks I have got the same question a couple of times how to make it work for anonymous users. ## Rendering-results-from-multiple-item-display-templates-in-the-cswp - [Rendering results from multiple item display templates in the CSWP · Elio Struyf](https://www.eliostruyf.com/rendering-results-from-multiple-item-display-templates-in-the-cswp/): A few weeks ago a customer asked me if it was possible to create a display template which visualizes article results according to the page layout that got used. This customer has various types of articles and page layouts set up in their environment. The display template was required for the main roll-up of the articles and users had to have the same experience as going to the article itself. ## Table-layout-display-template-with-rest-batching-functionality-support - [Table layout display template with REST batching functionality support · Elio Struyf](https://www.eliostruyf.com/table-layout-display-template-with-rest-batching-functionality-support/): Last week I went to the SharePoint Evolution Conference, which was a great event. At the conference I attended one of Andrew Connell’s sessions about a deep dive into the SharePoint REST API. During Andrew’s session he explained the REST API batching functionality which is at the moment only available in SharePoint Online / Office 365. ## Speaking-at-sharepoint-saturday-paris-spsparis - [Speaking at SharePoint Saturday Paris #SPSParis · Elio Struyf](https://www.eliostruyf.com/speaking-at-sharepoint-saturday-paris-spsparis/): I am pleased to tell you that I will be speaking at SharePoint Saturday Paris on May, 30th. This event is organised by Benoit Jester, Patrick Guimonet, and Gokan Ozcifci. These guys already did an amazing job with their personalized speaker announcements and the agenda they put together. Show image SPSParis Twittre On #SPSParis I will be talking about how to improve your SharePoint search experience and is scheduled at 15:00 - 15:45. ## Microsoft-mvp-for-office-365 - [Microsoft MVP for Office 365 · Elio Struyf](https://www.eliostruyf.com/microsoft-mvp-for-office-365/): Yesterday I received the email from Microsoft. Show image MVP email I am very happy and honored to have received this MVP award from Microsoft. My main community contributions the past years were of course my blog and the several speaking opportunities. I want to thank all the people who have given me these opportunities and the people that supported me. ## Watch-out-when-you-move-display-templates-from-office-365-to-on-premises - [Watch out when you move display templates from Office 365 to On-premises · Elio Struyf](https://www.eliostruyf.com/watch-out-when-you-move-display-templates-from-office-365-to-on-premises/): Today I was creating my session for SharePoint Saturday Belgium and Paris. For my demo’s I prepared a couple of display templates that were created on Office 365 / SharePoint Online. To be sure that I had a backup plan, I moved all these display templates to my development environment on-premises. ## Making-columns-searchable-for-the-list-or-library-searchbox - [Making columns searchable for the list or library searchbox · Elio Struyf](https://www.eliostruyf.com/making-columns-searchable-for-the-list-or-library-searchbox/): One of the handiest features that were added to a list or library is the in-place searchbox. The in-place searchbox allows you to quickly search for items or documents while staying in the list or library context (in previous versions you were redirected to a search page). When you have used this list or library searchbox, you may have experienced some problems like not been able to retrieve the items you needed or even retrieving no items at all. ## Correctly-sorting-search-results-by-managed-metadata-properties - [Sorting search results by managed metadata properties · Elio Struyf](https://www.eliostruyf.com/correctly-sorting-search-results-by-managed-metadata-properties/): Most of the SharePoint environments these days make use of managed metadata. If you do so and want to use the managed properties within your search web parts, you could experience some strange behaviour when sorting your results based on these managed metadata properties. When using the auto-created managed properties linked to your managed metadata column for sorting, a disorder of your results can occur. ## Sharepoint-saturday-belgium-2015-coming - [SharePoint Saturday Belgium 2015 is coming! · Elio Struyf](https://www.eliostruyf.com/sharepoint-saturday-belgium-2015-coming/): Show image SharePoint Saturday Belgium The BIWUG board is proud to announce the fifth edition of SharePoint Saturday Belgium. The event takes place on Saturday April 18th and will be held at a new venue: ALM Antwerp http://www.almantwerpen.be/en/, Filip Williotstraat 9 - 2600 Berchem. The event is completly sold out, but you can still put yourself on the waiting list - SPSBE Waiting list. ## Three-useful-managed-properties-for-working-with-office-web-apps - [Three useful managed properties for working with Office Web Apps · Elio Struyf](https://www.eliostruyf.com/three-useful-managed-properties-for-working-with-office-web-apps/): When working in Office 365 / SharePoint on-premises you probably already used Office Web Apps (OWA) to create or modify your documents. The power of OWA is also leveraged inside a SharePoint Search Center to show the content of the document inside the hover panel. Show image Document preview This kind of functionality is very helpful for finding the document you are searching for. ## Filtering-results-predefined-set-values-display-template - [Filtering results on predefined set of values in your display template · Elio Struyf](https://www.eliostruyf.com/filtering-results-predefined-set-values-display-template/): For one of my clients I investigated the possibility to include result filtering or refinement into a display template for the Content Search Web Part. The reason to include this filtering functionality into a display template is to make it easier to fit into the corporate design. Another reason is to minimum the amount of display templates that get loaded on your page. ## Adding-managed-property-mappings-display-templates-may-not-altered - [Adding managed property mappings to your display templates which may not be altered · Elio Struyf](https://www.eliostruyf.com/adding-managed-property-mappings-display-templates-may-not-altered/): One of the interesting things about display templates is that you can add managed property mappings that can be managed in the SharePoint UI. This allows users to define which properties they want to use in their templates. Show image Property mappings Now as a display template creator, it could be that you want to be in control so that the end user cannot make changes to certain properties in the UI. ## Adding-configurable-settings-display-templates - [Adding configurable settings to your display templates · Elio Struyf](https://www.eliostruyf.com/adding-configurable-settings-display-templates/): A question that has been asked to me a couple of times is if it would be possible to add some settings to the Content by Search Web Part which can be leveraged inside the display templates. This could be handy when you want to develop display templates for which you want to be able to change the rendering based on the settings that were configured in the web part. ## Adding-link-search-result-list-library-display-template - [Adding a link to the search result list or library into your display template · Elio Struyf](https://www.eliostruyf.com/adding-link-search-result-list-library-display-template/): A lot of users want to get an overview of the latest items of a list or library. Some users want to include a link to the list or library from which the items were retrieved. As this link from the search results location may vary, you should not hard code the link back to the item or control template. ## Adding-paging-numbers-control-list-paging-template - [Adding paging numbers to the control list with paging template · Elio Struyf](https://www.eliostruyf.com/adding-paging-numbers-control-list-paging-template/): When you are using the Content Search Web Part, you have by default a control template list with paging available. Now this template only shows left and right buttons to navigate to the next or previous page: Show image Default list with paging template These two buttons do not give you very much visual information about paging. ## Creating-result-block-shows-office-graph-suggestions-part-2-technical-details - [Creating a result block that shows Office Graph suggestions – Part 2 technical details · Elio Struyf](https://www.eliostruyf.com/creating-result-block-shows-office-graph-suggestions-part-2-technical-details/): In the previous blog post I showed you how to create a result block with Office Graph suggestions. This was all done by three display templates. In this blog post I will describe in more detail what each of these templates does, and how I achieved it. Note: here is a link to the previous post: Creating a result block that shows Office Graph suggestions - Part 1. ## Creating-result-block-shows-office-graph-suggestions-part-1 - [Creating a result block that shows Office Graph suggestions – Part 1 · Elio Struyf](https://www.eliostruyf.com/creating-result-block-shows-office-graph-suggestions-part-1/): There are already a various blog posts that show the power and value of Office Graph / Delve for your organisation, but not everyone will go to the Delve page to find their results. You also have your SharePoint search center were a lot of your users will go through to find their documents because they are used doing it that ways. ## Date-range-filter-date-picker-display-template - [Date range filter with date picker display template · Elio Struyf](https://www.eliostruyf.com/date-range-filter-date-picker-display-template/): Some time ago I wrote a blog post series about creating your own search refiners for SharePoint 2013. Note: here you can find the posts - Creating Custom Refiner Control Display Templates for SharePoint 2013. A couple of persons have asked me how they could implement a date picker to the range search refiner control I created in the last post. ## Fixing-slider-bar-graph-refiner-custom-date-time-managed-properties - [Fixing the slider with bar graph refiner for custom date and time managed properties · Elio Struyf](https://www.eliostruyf.com/fixing-slider-bar-graph-refiner-custom-date-time-managed-properties/): Last Friday there was a discussion on Twitter about a problem with the Slider with bar graph refiner. The problem is that the refiner does not work properly when you use custom date and time managed properties. When you would use a custom date and time managed property, you get the following output: ## Jquery-ui-tabbing-accordion-display-templates - [jQuery UI tabbing and accordion display templates · Elio Struyf](https://www.eliostruyf.com/jquery-ui-tabbing-accordion-display-templates/): A couple of weeks ago somebody asked me if it was possible to create an accordion template from the grouping display template. Note: here is the original grouping template post - Grouping search results with display templates for the CSWP For these templates I made use of jQuery UI to get the accordion styling on the template. ## Retrieving-list-library-name-search-result-display-templates - [Retrieving the list or library name of a search result in display templates · Elio Struyf](https://www.eliostruyf.com/retrieving-list-library-name-search-result-display-templates/): A question was asked a while ago on StackExchange by a person with whom I worked together at one of my clients. He asked if it was possible to get the list or library name via a managed property so that it can be used in a display template. The problem is that there is not a property that has this list name information. ## Correctly-including-scripts-display-templates - [Correctly including scripts into your display templates · Elio Struyf](https://www.eliostruyf.com/correctly-including-scripts-display-templates/): When creating display templates it is sometimes required to load additional script and/or CSS files. These files can easily be referenced in a display template with the following functions: $includeScript $includeLanguageScript $includeCSS Now there is a problem when using these $include functions. The problem is that the function loads your referenced files asynchronously. ## 10-sharepoint-display-template-tips-tricks - [My 10 SharePoint display template tips and tricks · Elio Struyf](https://www.eliostruyf.com/10-sharepoint-display-template-tips-tricks/): In this post I tell you my 10 tips and tricks that could help you when creating your display templates. Tip 1: only do your changes in the HTML files, except if you know what you are doing Best is to do your changes in the HTML version of the display template, otherwise you could end up with a corrupt JavaScript file. ## Adding-customizing-actions-search-hover-panel - [Adding and customizing actions in the search hover panel · Elio Struyf](https://www.eliostruyf.com/adding-customizing-actions-search-hover-panel/): Adding custom actions to a search hover panel is completely different than when you are doing it for an item/document callout. When adding a custom action to item or document callout you will be able to override the default footer with your own custom actions. These things can be done without touching any of the existing JavaScript files (add a custom action - add a custom action for a specific file type). ## Adding-custom-action-callout-based-file-type - [Adding a custom action to a callout based on the file type · Elio Struyf](https://www.eliostruyf.com/adding-custom-action-callout-based-file-type/): Back in October 2013 I wrote a post on how you could add your custom actions in a callout like this (Adding a custom action to a callout in SharePoint 2013): Show image Callout with a custom action This time I had the requirement to only add an action for a specific file type. ## Sharepoint-saturday-uk-wrap - [SharePoint Saturday UK wrap-up · Elio Struyf](https://www.eliostruyf.com/sharepoint-saturday-uk-wrap/): The past weekend I went to the my second SharePoint Saturday UK. This year I was also presenting about how to take your display template skills to the next level. Apart from the wifi at the venue, everything was great. I heard that some speakers could not do their demo’s due to the internet connection. ## Add-multi-sorting-managed-properties-display-templates - [How to add multi-sorting of managed properties in your display templates · Elio Struyf](https://www.eliostruyf.com/add-multi-sorting-managed-properties-display-templates/): Last week I had an internal event where I did one of my new sessions: take your display template skills to the next level. One of the topics that I discuss during this session is how you can add sorting in your display templates. Note: this is something I blogged about a couple of months ago (How to add sorting in display templates and Table layout display template with managed property sorting). ## Combining-multiple-office-apps-into-one-global-app - [Combining multiple Office Apps into one global add-in · Elio Struyf](https://www.eliostruyf.com/combining-multiple-office-apps-into-one-global-app/): The first thing when you create a new Office App is that you have to choose which type of app you want to create. You have the following app shape types you can choose of: Task pane Content Mail Show image Office App shapes Each of these app shape types is designed for a specific application. ## Things-need-know-implementing-azure-ad-office-apps - [Things you need to know when implementing Azure AD in your Office add-ins · Elio Struyf](https://www.eliostruyf.com/things-need-know-implementing-azure-ad-office-apps/): Some time ago I wrote a sample Office app made use of Azure Active Directory to get access to SharePoint resources. I experienced some different behaviour in my Office App between the online client (Outlook Web App) and the rich client. This post describes the behaviour I noticed when implementing Azure AD authentication in my Office App. ## Find-office-rich-client-office-app-opened - [Find out in which Office rich client your Office APP is opened · Elio Struyf](https://www.eliostruyf.com/find-office-rich-client-office-app-opened/): Some time ago I posted an article about how you can check in which context your mail APP has been opened in OWA or the Outlook rich client (read the post here). I needed that solution for a proof of concept mail app. The mail app is finished, so I wanted to go a step further and I also made the APP work in the other Office applications. ## Retrieve-the-web-url-for-a-search-result-via-a-managed-property - [Retrieve the web URL for a search result via a managed property · Elio Struyf](https://www.eliostruyf.com/retrieve-the-web-url-for-a-search-result-via-a-managed-property/): These days a lot of my work is done in Office 365, but I have customers that are still working on an on-premises environment. Sometimes when switching back to an on-premises environment you could be surprised by things that are not (yet) available. This week I wanted to implement a link which goes directly to the site on which the search result item is located. ## Changing-number-visible-list-views-view-selector-list-library-2 - [Changing the number of visible list views in the view selector of a list or library · Elio Struyf](https://www.eliostruyf.com/changing-number-visible-list-views-view-selector-list-library-2/): For a colleague I did some checks on how the view selector rendering is achieved in lists and libraries. While digging through the code I found a very useful property, which is the ClientPivotControl.prototype.SurfacedPivotCount property. This property is used to define the amount of list views that are visible on the list view selector. ## Office-graph-search-queries-sharepoint-search-center - [Office graph search queries from within your SharePoint search center · Elio Struyf](https://www.eliostruyf.com/office-graph-search-queries-sharepoint-search-center/): Now that Delve is out, it is time to do some experiments with it. One of the things I wanted to test is if you can visualize results from Office Graph in your SharePoint search center. You can of course query data on the Delve page itself, but most of our users always go to the default SharePoint search center to search for their content. ## Check-mail-app-opened-outlook-web-app-outlook-rich-client - [Check if your mail app is opened in Outlook Web App or Outlook rich client · Elio Struyf](https://www.eliostruyf.com/check-mail-app-opened-outlook-web-app-outlook-rich-client/): During the development for my proof of concept mail app, I needed to know in which context my app was running. By default you have the option to set the startpage for the desktop, tablet or mobile view (Set up a mail app for Outlook on tablets and mobile devices), but you do not have the option to change the view when opened in a rich client. ## How-to-apply-a-new-suite-bar-theme-on-your-office-365-tenant - [How to apply a new suite bar theme on your Office 365 tenant · Elio Struyf](https://www.eliostruyf.com/how-to-apply-a-new-suite-bar-theme-on-your-office-365-tenant/): Microsoft is rolling out a new functionality to theme the suite bar or to top nav bar in Office 365. This may seem a simple functionality but can have an enormous change trough wards the branding of a company. A couple of my clients was waiting for this functionality to be released. ## Use-google-fonts-font-scheme - [How to use Google Fonts in your font scheme · Elio Struyf](https://www.eliostruyf.com/use-google-fonts-font-scheme/): In the previous post I showed you how to create a font scheme with custom web fonts. Now a lot of people (even me) are using the fonts from the Google Fonts gallery. Google works a bit differently compared to SharePoint font schemes. Google provides a CSS reference which you need to add to your HTML. ## Adding-web-fonts-font-scheme-sharepoint-composed-look - [Adding your web fonts to a font scheme in SharePoint (composed look) · Elio Struyf](https://www.eliostruyf.com/adding-web-fonts-font-scheme-sharepoint-composed-look/): Back in August 2012 I wrote a post about how you could create your own font scheme for SharePoint 2013 (you can find the post here). In the post I included an example font scheme with the required elements. One thing I did not cover in that post was how you could add your own custom web fonts into your font scheme. ## New-biwug-website-live - [The new BIWUG website is live · Elio Struyf](https://www.eliostruyf.com/new-biwug-website-live/): Today I launched the new design of the BIWUG website and the great thing is, it just runs on SharePoint public website of Office365. Which was quite challenging, because you do not have all the features available which you have in a normal publishing site. A couple of thing have been changed: ## Add-attachment-mail-via-owa-app - [How to add an attachment to a mail via an OWA App · Elio Struyf](https://www.eliostruyf.com/add-attachment-mail-via-owa-app/): For one of our company events later this month, I developed a demo OWA app which could add attachments to a mail. I used the following MSDN article to achieve this: Add and remove attachments to an item in a compose form in Outlook. In the article they give a good overview, but there is one little problem with the example code. ## Find-custom-managed-properties-hover-panel-display-template-contain-value - [Find out why custom managed properties in the hover panel display template do not contain a value · Elio Struyf](https://www.eliostruyf.com/find-custom-managed-properties-hover-panel-display-template-contain-value/): Hover panels are one of the things that make the search experience in SharePoint 2013 a lot better, you instantly retrieve a more information about a search result. Like every other display template, the hover panel templates are easy to create. The difference with a hover panel templates is that they get referenced from within an item display template. ## New-theme-engine-suite-bar-office-365-sharepoint-sites - [New theme engine for the suite bar in Office 365 SharePoint sites · Elio Struyf](https://www.eliostruyf.com/new-theme-engine-suite-bar-office-365-sharepoint-sites/): Today I saw a lag in the loading of the new suite bar colors on one of my SharePoint site in Office 365. Show image Default suite bar Show image Default suite bar with a composed look applied The suite bar uses the O365ShellCore.css to do the styling. It turns out that when you apply a composed look to your site, the new colors are set by a new theme engine of the suite bar on the fly. ## Setresultitem-function-makes-breaks-search-experience - [$setResultItem a function that makes or breaks your search experience · Elio Struyf](https://www.eliostruyf.com/setresultitem-function-makes-breaks-search-experience/): A couple of days ago I was talking with Mikael Svenson, he asked me what the $setResultItem function does. Because there is no information to be found on the internet, I wanted to share this information with everyone. This function can completly change the behaviour of your search center, so it is important to know what it does in your display templates. ## Get-javascript-intellisense-syntax-highlighting-html-display-templates - [How to get JavaScript intellisense and syntax highlighting in HTML display templates · Elio Struyf](https://www.eliostruyf.com/get-javascript-intellisense-syntax-highlighting-html-display-templates/): It is very easy to create your own HTML display templates in SharePoint 2013, but one thing you probably miss the most, is intellisense and syntax highlighting for your JavaScript code. All the JavaScript code needs to be written in a HTML comment, which will eventually be normal JavaScript code when the HTML gets converted. ## Adding-some-angularjs-magic-to-your-display-templates - [Adding some AngularJS magic to your display templates – part 4 · Elio Struyf](https://www.eliostruyf.com/adding-some-angularjs-magic-to-your-display-templates/): The last posts were about integrating AngularJS into display templates, and how you could optimize the code. Once you start using the templating from AngularJS it is quite easy to add extra functionality to the templates. In this post I give you a couple of additions to the template created in the previous posts. ## Moving-angularjs-code-control-display-template - [Moving all your AngularJS code to the control display template – part 3 · Elio Struyf](https://www.eliostruyf.com/moving-angularjs-code-control-display-template/): The last two post were about how to create display templates that make use of AngularJS. Another thing I was thinking of is if it is possible to move all the code from the item template to the control template, so that the item display template can be ignored. Moving all the code to the control display template is possible, but fully eliminate the item display template is not possible. ## Creating-your-own-dataset-for-angularjs-display-templates - [Creating your own dataset for AngularJS display templates – Part 2 · Elio Struyf](https://www.eliostruyf.com/creating-your-own-dataset-for-angularjs-display-templates/): In my previous post, I showed how to include AngularJS to your display templates. In this part I will talk about how to extend the templates so that the document icon and “line 2” property (which is not provided by default) can be added. To provide these new values (icon and line 2) to your template, it is best to create your own dataset. ## How-to-add-angularjs-to-your-display-templates - [How to add AngularJS to your display templates (CSWP) – part 1 · Elio Struyf](https://www.eliostruyf.com/how-to-add-angularjs-to-your-display-templates/): AngularJS is so popular these days that I wanted to check out the possibilities in combination with display templates. Once you know the steps to combine them, you could add the magic of AngularJS to your templates. Like for example the templating engine, filtering, directives, etc. In the first post I will tell you more about my approach of how you could databind the result rows to an AngularJS template. ## Display-template-custom-document-properties-explained - [Display template custom document properties explained · Elio Struyf](https://www.eliostruyf.com/display-template-custom-document-properties-explained/): In this post all the search display template custom document properties of are explained. Here is an example of how an out-of-the-box display template document property section looks like: 1 2 3 4 5 6 7 8 9 10 0 'Link URL'{Link URL}:'Path','Line 1'{Line 1}:'Title','Line 2'{Line 2}:','FileExtension','SecondaryFileExtension' This Item Display Template will show a small thumbnail icon next to a hyperlink of the item title, with an additional line that is available for a custom managed property. ## Table-layout-display-template-with-managed-property-sorting - [Table layout display template with managed property sorting · Elio Struyf](https://www.eliostruyf.com/table-layout-display-template-with-managed-property-sorting/): In my last two blog posts I talked about how you could add sorting, and how to find out if a managed property is sortable. These two posts were created during the creating time of a table layout display template. Of course there are a couple of table layout templates already, but none had the option to sort the results. ## Know-managed-property-sortable-with-javascript - [How to know if a managed property is sortable with JavaScript · Elio Struyf](https://www.eliostruyf.com/know-managed-property-sortable-with-javascript/): In my previous post I talked about how you could add managed property sorting in a display templates. The problem with this is that you need to know that the managed property is sortable. If the managed property isn’t sortable, it won’t work. Unfortunately if you’re going to sort on an unsortable managed property, this will result in a web part with an error: ## Add-sorting-display-templates - [How to add sorting in display templates · Elio Struyf](https://www.eliostruyf.com/add-sorting-display-templates/): An idea where I’m currently working on involves sorting of the search results in display templates. So I thought it would be interesting to share this information already. You will see that enabling sorting, won’t involve a lot of code. You just need to know what you need to do, before you can start sorting the results. ## Grouping-search-results-with-display-templates-for-the-cswp - [Grouping search results with display templates for the CSWP · Elio Struyf](https://www.eliostruyf.com/grouping-search-results-with-display-templates-for-the-cswp/): This post was something that has been on my to-do list for quite some time, and was also requested by a couple of people. So finally I found the time to work this out. Back in SharePoint 2010 and 2007 we could easily group the results in the Content Query Web Part, but this functionality isn’t included in the Content Search Web Part. ## Problem-with-the-sharepoint-2013-office-365-blog-post-publication-action - [Problem with the SharePoint 2013 & Office 365 blog post publication action · Elio Struyf](https://www.eliostruyf.com/problem-with-the-sharepoint-2013-office-365-blog-post-publication-action/): A client of mine is currently undergoing a migration from SharePoint 2007 to 2013. An important part of their migration is a blog site. This blog is used all over the company to spread news to the colleagues. Everything went fine during the migration process of the blog, but from the moment they started testing the functionality they saw some weird behaviour. ## Speaking-sharepoint-saturday-netherlands-2014 - [Speaking at SharePoint Saturday Netherlands 2014 · Elio Struyf](https://www.eliostruyf.com/speaking-sharepoint-saturday-netherlands-2014/): At the last moment, I was asked to speak on the SharePoint Saturday Netherlands. Someone canceled his speakers slot, and that way this opened up a place for me. This will also be my first SPSNL that I’ll attend, the previous years I always had a personal appointment planned (this year also but was cancelled, that was why my submission was a bit too late). ## European-sharepoint-conference-2014-espc14 - [European SharePoint Conference 2014 #ESPC14 · Elio Struyf](https://www.eliostruyf.com/european-sharepoint-conference-2014-espc14/): The ESPC this year was a blast, there were a couple of very good sessions, but the main reason was to meet some people in real life. There were a couple of very good after parties, like the AvePoint Red Part and the BIWUG SharePint we organised on Wednesday evening. ## Ultimate-diagnostic-display-template - [Ultimate diagnostic display template · Elio Struyf](https://www.eliostruyf.com/ultimate-diagnostic-display-template/): For my SharePoint Saturday Belgium 2014 session: “Sorry, something went wrong. How to start debugging your Display Templates”, I created the ultimate diagnostic display template. With this display template you’re able to retrieve all the available properties for your result. Show image Content Search Web Part Configuration When you configure the Content Search Web Part as shown above, it will output the property name, type and its corresponding value for the current result. ## Automatically-update-refresh-results-display-templates - [Automatically update / refresh results in display templates · Elio Struyf](https://www.eliostruyf.com/automatically-update-refresh-results-display-templates/): During the creation process of a demo for my SharePoint Saturday Belgium session this year, I suddenly came up with the idea to automatically update or refresh results of a Content Search Web Part. This could be useful when you have dashboard pages and you want to keep showing the latest items retrieved from search. ## Document-set-view-not-visible-in-sharepoint-2013 - [Document set view not visible in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/document-set-view-not-visible-in-sharepoint-2013/): Some time ago I wrote a post about the missing Apps you can add zone (Missing the Apps you can add Zone When Adding a New App). The problem with it was that this zone becomes available once a particular element is found on the page. The element was placed on the page via the PlaceHolderPageTitleInTitleArea content placeholder. ## Define-custom-server-side-rendering-catalog-items-xslt - [Define custom server side rendering for catalog items with XSLT · Elio Struyf](https://www.eliostruyf.com/define-custom-server-side-rendering-catalog-items-xslt/): XSLT and SharePoint 2013, didn’t thought I was going to use it now that we have display templates. Almost everything can be done with display templates and JavaScript these days, but you need to be careful that you don’t build everything with JavaScript, because it could slow down the client experience. ## Things-need-know-anonymous-permissions-cross-site-publishing-functionality - [Things you need to know about anonymous permissions with the cross-site publishing functionality · Elio Struyf](https://www.eliostruyf.com/things-need-know-anonymous-permissions-cross-site-publishing-functionality/): Working with cross-site publishing in SharePoint can be fun, but it can also give you some headaches. One of the things were it can go wrong is the permissions, it all seems very simple just some clicking in the UI and you’re all set. That is correct, but what happens if it goes wrong? ## Client-side-managed-property-value-formatting-catalog-item-page-layouts - [Client side managed property value formatting for catalog item page layouts · Elio Struyf](https://www.eliostruyf.com/client-side-managed-property-value-formatting-catalog-item-page-layouts/): In the last two blog posts, I covered how you could check which managed properties are available for the catalog item and I also explained a problem with DateTime values. In this post I’ll cover the topic on how you could format the values on the client side. The reason I created this post, is because there isn’t much information available around this topic. ## Catalog-item-reuse-web-part-doesnt-show-managed-property-values-from-datetime-type - [Catalog Item Reuse Web Part doesn’t show Managed Property Values from DateTime Type · Elio Struyf](https://www.eliostruyf.com/catalog-item-reuse-web-part-doesnt-show-managed-property-values-from-datetime-type/): Last week I was doing some experiments with the creation process of page layouts for a cross-site publishing site. After a couple tests with different types of data, I saw some weird behavior when using DateTime managed properties. The Catalog Item Reuse web part didn’t show the value for a managed property of DateTime type. ## Checking-managed-properties-available-catalog-items - [Checking which Managed Properties are available for your Catalog Items · Elio Struyf](https://www.eliostruyf.com/checking-managed-properties-available-catalog-items/): I’m currently working on my first project that makes use of Cross-Site Publishing functionality from SharePoint 2013. One of the aspects is to create a couple of page layouts to visualise the managed properties from the catalog items. When you configure a catalog connection for the first time on your site, the category and catalog item pages will automatically be created. ## How-to-retrieve-a-lookup-field-value-js-link - [How to Retrieve a Lookup Field Value in JS LINK · Elio Struyf](https://www.eliostruyf.com/how-to-retrieve-a-lookup-field-value-js-link/): This week I received a question from someone asking me about how you could retrieve the value from a lookup field in a JS Link field rendering file. Solution Retrieving the value from a lookup field is easier than it used to be when working with XSL in SharePoint 2007 / 2010. ## Image-renditions-december-cumulative-update-sharepoint-2013 - [Image Renditions and December Cumulative Update SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/image-renditions-december-cumulative-update-sharepoint-2013/): Once you’ve updated your environment with the Cumulative Update of December 2013, it could happen that you see the following errors popping up in your ULS logs: Format Exception: Input string was not in a correct format. The problem occurs if you provisioned your image renditions to the site collection via the PublishingImageRenditions. ## Sharepoint-saturday-stockholm-wrap - [SharePoint Saturday Stockholm Wrap-up · Elio Struyf](https://www.eliostruyf.com/sharepoint-saturday-stockholm-wrap/): If I should describe the SharePoint Saturday Stockholm in one word, I would go for amazing. If you didn’t know that it was the first time that this event was organised, you would have said that the team: Hannah Swain, Matthias Einig, and Erwin van Hunen did this already a couple of times. ## Sharepoint-saturday-2014-coming-soon - [SharePoint Saturday Belgium 2014 is coming soon! · Elio Struyf](https://www.eliostruyf.com/sharepoint-saturday-2014-coming-soon/): Show image SharePoint Saturday Belgium The BIWUG board is proud to announce a new edition of SharePoint Saturday Belgium! The event takes place on Saturday - of course - April 26th at the same location as the previous years: Xylos http://www.xylos.com, St-Lendriksborre 8, 1120 Brussels. The call for speakers is open, you can register your sessions via the following link: http://elst. ## Missing-apps-can-add-zone-adding-new-app - [Missing the Apps you can add Zone When Adding a New App · Elio Struyf](https://www.eliostruyf.com/missing-apps-can-add-zone-adding-new-app/): This week a client mentioned an issue when they want to add new apps to their sites. The issue is that they do not see the Apps you can add zone on the app creation page (your-site/_layouts/15/addanapp.aspx). They only see the Noteworthy apps: Show image Noteworthy Apps The sites on which this problem occurs have custom branding applied. ## View-duplicate-results-sharepoint-2013-search-center-via-javascript - [View Duplicate Results in the SharePoint 2013 Search Center via JavaScript · Elio Struyf](https://www.eliostruyf.com/view-duplicate-results-sharepoint-2013-search-center-via-javascript/): The blog post about how to dynamically change the result sources in a search center was based on a solution that I created to show the duplicated results in a search center with JavaScript. A standard Search Center in SharePoint 2013 doesn’t show the duplicated results by default. You have two options to view the duplicates: ## Dynamically-changing-result-source-sharepoint-2013-search-center - [Dynamically Changing the Result Source in a SharePoint 2013 Search Center · Elio Struyf](https://www.eliostruyf.com/dynamically-changing-result-source-sharepoint-2013-search-center/): Almost two months ago Pascal Van Vlaenderen asked a question on twitter if there’s a way to specify the Result Source in the QueryString (https://twitter.com/VanVlaenderenP/status/392920559853383680). Since that time, this question was on my to-do list to check this out. What I proposed back then, was to change the result source in the data provider object with JavaScript. ## Part-7-working-ranges-search-refiner-control - [Part 7: Working with Ranges in the Search Refiner Control · Elio Struyf](https://www.eliostruyf.com/part-7-working-ranges-search-refiner-control/): This is an extra post for the search refiner control series. In this post I’ll explain how you could build a search refiner control that makes use of ranges. The range operator can be used for the following search data types: DateTime Decimal Integer The out-of-the-box refiner controls use this range operator for its slider controls, but it can easily be used within your custom refiner. ## Speaking-sharepoint-saturday-stockholm-2014 - [Speaking at SharePoint Saturday Stockholm 2014 – #SPSSTHLM · Elio Struyf](https://www.eliostruyf.com/speaking-sharepoint-saturday-stockholm-2014/): On the 25th of January 2014, I’ll be speaking at the first SharePoint Saturday Stockholm (SPSSTHLM). This will also my first foreign speaker opportunity. Therefore, I would like to thank Hannah Swain, Matthias Einig, and Erwin van Hunen for giving me this opportunity by accepting my submission. The speakers line-up is amazing, it will be hard to choose which sessions to follow. ## Show-the-share-action-on-your-page-layouts - [Show the Share Action on your Page Layouts · Elio Struyf](https://www.eliostruyf.com/show-the-share-action-on-your-page-layouts/): A question I received a couple of days ago was if it would be possible to display the share action on a page like the action in the context menu of that page. Show image Share Action Solution The solution for this is really simple, all you need to do is creating a hyperlink on the page layout and use a JavaScript function call in the href attribute for the click event. ## Page-switched-another-page-layout - [The Page Cannot be switched to Another Page Layout · Elio Struyf](https://www.eliostruyf.com/page-switched-another-page-layout/): I’m currently working on a migration project at a client. It’s a migration from SharePoint 2010 to 2013, which involves some re-development and branding. For the branding part, where this post focusses on, a couple of new page layouts needed to be created. The purpose of these page layouts is to replace the old versions, and to move from five almost completely the same page layouts to only one page layout. ## Part-6-create-multi-value-search-refiner-control - [Part 6: Create a Multi-Value Search Refiner Control · Elio Struyf](https://www.eliostruyf.com/part-6-create-multi-value-search-refiner-control/): This post focusses on the creation process for a multi-value search refiner control. This control will be very much the same as the default multi-value refiner, but has a bit more flexibility, and gives you a good starting point for applying your own customizations. Default Multi-Value Refinement Control First let me tell you how the default multi-value search refiner control works. ## Part-5-search-refiner-control-methods-explained - [Part 5: The Search Refiner Control Methods Explained · Elio Struyf](https://www.eliostruyf.com/part-5-search-refiner-control-methods-explained/): In previous posts I showed you how you to build your own Search Control Refiners. This post will focus on the JavaScript methods that can be used for refinement. There are a couple of them, but when do you need to use which refiner method? I’ll split this post up in sections to describe the actions that can be achieved. ## Part-4-create-dropdown-search-refiner-control - [Part 4: Create a Dropdown Search Refiner Control · Elio Struyf](https://www.eliostruyf.com/part-4-create-dropdown-search-refiner-control/): In this blog post part of the search refiner control series, I’ll show how to create a dropdown search refiner control. To make it a bit special, I’ve added the functionality of showing the filters that were available before the results were refined. Show image Mockup Note: for this post I start with the file I created in part 2 of this series. ## Part-3-working-with-file-types-in-the-search-refiner-control-template - [Part 3: Working with File Types in the Search Refiner Control Template · Elio Struyf](https://www.eliostruyf.com/part-3-working-with-file-types-in-the-search-refiner-control-template/): In the previous posts I explained how to create a new refiner control, but there is one search data type that needs some special attention. The search data type that will be explained in this post is the FileType. In this post I’ll show you the things that are so special about working with filetypes. ## Part-2-adding-refinement-actions-to-the-custom-search-refiner-control - [Part 2: Adding Refinement Actions to the Custom Search Refiner Control · Elio Struyf](https://www.eliostruyf.com/part-2-adding-refinement-actions-to-the-custom-search-refiner-control/): In the previous post I explained how to create your first search refiner control template. The template that was created wasn’t that useful, because it missed the refinement actions. In this post I explain how to add these refinement actions to your template and what to do once results are refined. ## Part-1-create-first-search-refiner-control-template - [Part 1: Create Your First Search Refiner Control Template · Elio Struyf](https://www.eliostruyf.com/part-1-create-first-search-refiner-control-template/): In the first part of this blog post series about custom search refiner controls, I’ll describe what is minimal needed to create a clean refiner control display template. This template can later be used as a starter’s template for the creation of other refinement controls. Create a New Search Refiner Control Template The first thing you’ll need to do, is creating a new HTML file in the Master Page Gallery. ## Creating-custom-refiner-control-display-templates-for-sharepoint-2013 - [Creating Custom Refiner Control Display Templates for SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/creating-custom-refiner-control-display-templates-for-sharepoint-2013/): As you may already know and seen, there has been quite a lot of improvements to create or change UI elements from SharePoint 2013, especially UI objects of search. A topic that I wanted to blog about for quite some time now (first time I started this post was in April) will show you how to create your own custom refiner display templates. ## Required-display-templates - [What is required for Display Templates? · Elio Struyf](https://www.eliostruyf.com/required-display-templates/): Yesterday we had the first Biwug Quiz. One of the questions was the following: Display Templates require one of the following options: HTML JavaScript JavaScript & HTML XSL Everyone has answered that you need the JavaScript and HTML file, but this isn’t correct. The correct one was number two JavaScript. To clarify the answer I will show you why you don’t need the HTML file. ## Customize-star-rating-images-sharepoint-2013 - [Customize the star rating images in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/customize-star-rating-images-sharepoint-2013/): The SharePoint 2013 rating system slightly changed a bit. In SharePoint 2013 you can now choose to use likes or star ratings. This functionality can be turned on via the Rating settings in the list. Show image List Rating Settings Styling the SharePoint 2013 star rating involves some work. The only “quick” option you have is to apply a composed look to your site. ## Adding-a-custom-action-to-a-callout-in-sharepoint-2013 - [Adding a custom action to a callout in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/adding-a-custom-action-to-a-callout-in-sharepoint-2013/): A couple of weeks / months ago I wrote a blog post about how to you could hide the default social actions in the callout menu of a document library (blog post). The trick to remove these actions was to override the footer template rendering of the callout. This week I had the opposite question, how can you add a custom action to the callout with preserving the default actions. ## Showing-alternating-rows-in-the-content-search-webpart-display-template - [Showing Alternating Rows in the Content Search WebPart (Display Template) · Elio Struyf](https://www.eliostruyf.com/showing-alternating-rows-in-the-content-search-webpart-display-template/): Showing alternating rows can be done in various ways, you can do it via jQuery or even with CSS. Another way is to add an alternating class to the item via the Item Display Control. I’ll explain the last method in this post. Note: here are the references to the jQuery and CSS methods: jQuery Odd Selector - CSS Even and Odd ## Create-a-load-more-results-link-button-for-the-content-search-web-part - [Create a Load More Results Link / Button for the Content Search Web Part (Display Template) · Elio Struyf](https://www.eliostruyf.com/create-a-load-more-results-link-button-for-the-content-search-web-part/): The next blog post describes how you can create a Load More Results link as the name itself describes, loads more results. The solution is created to be used in a Content Search WebPart. For this solution you will need to create a new Control Display Template (or you can append it to an existing one). ## How-to-use-the-search-results-webpart-as-replacement-when-content-search-webpart-is-not-available-in-your-farm - [How to use the Search Results WebPart as Replacement When Content Search WebPart is not available in Your Farm · Elio Struyf](https://www.eliostruyf.com/how-to-use-the-search-results-webpart-as-replacement-when-content-search-webpart-is-not-available-in-your-farm/): The purpose of this post is to show you how you could use the Search Results WebPart to visualize dynamic data like the Content Search WebPart (CSWP). To help you in this process I created some cleaned up display templates so that it becomes a bit easier to create your own HTML markup in them. ## How-to-define-a-custom-group-display-template-for-the-search-results-webpart-via-javascript - [How to Define a Custom Group Display Template (GroupTemplateId) for the Search Results WebPart via JavaScript · Elio Struyf](https://www.eliostruyf.com/how-to-define-a-custom-group-display-template-for-the-search-results-webpart-via-javascript/): For my next blog post I needed to investigate how to use a custom Group Display Template for the Search Results WebPart. Unfortunately you can only set the Control Display Template and the Item Display Template in the Search Results WebPart properties. Show image Display Template Settings Search Results WebPart If you want to specify the group display template, you have two options: ## Applying-js-link-on-task-lists-breaks-the-default-rendering-of-the-checkboxes - [Applying JS Link on Task Lists Breaks the Default Rendering of the Checkboxes · Elio Struyf](https://www.eliostruyf.com/applying-js-link-on-task-lists-breaks-the-default-rendering-of-the-checkboxes/): A few days ago a clever reader of my blog has informed me about a problem with the Create a “% Complete” Progress Bar with JS Link in SharePoint 2013 solution. He told me that when you apply the JS Link JavaScript to the web part, the checkboxes task checkboxes are rendered as Yes / No values. ## Ajax-refresh-item-rows-in-sharepoint-2013-view - [Ajax Refresh Item Row(s) in a SharePoint 2013 View · Elio Struyf](https://www.eliostruyf.com/ajax-refresh-item-rows-in-sharepoint-2013-view/): When examining the JS Link problem that was described in my previous blog post, I found a nifty piece of code. The code allows you to do an Ajax refresh for a single item row or for the item rows in the current view. This piece of code comes in handy when you have a custom actions that does an item update and only want to update the current item or the list of items. ## Provision-image-renditions-to-your-sharepoint-2013-site - [Provision Image Renditions to your SharePoint 2013 Site · Elio Struyf](https://www.eliostruyf.com/provision-image-renditions-to-your-sharepoint-2013-site/): In SharePoint 2013 you have the functionality to create renditions for your images. This allows you to use the same image but with different dimensions in your design. Most of the information you find about this topic is most about using it for different devices, so that you can use a smaller version for a mobile device, and the default one for a desktop. ## Provision-your-html-designs-master-pages-page-layouts-to-sharepoint-2013 - [Provision Your HTML Designs (Master Pages / Page Layouts) to SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/provision-your-html-designs-master-pages-page-layouts-to-sharepoint-2013/): A couple of months ago I wrote some posts about provisioning design files in SharePoint 2013 (display templates, none html design files). One thing I did not described is how you can provision your HTML master page and page layout design files. Most of the research (read time) was already done when I was trying to find out the best way to provision display templates. ## Sharepoint-saturday-2013-belgium-farewell-xsl-welcome-display-templates - [SharePoint Saturday 2013 Belgium – Farewell XSL, Welcome Display Templates · Elio Struyf](https://www.eliostruyf.com/sharepoint-saturday-2013-belgium-farewell-xsl-welcome-display-templates/): SharePoint Saturday Belgium 2013 is over, so that means we need to wait a whole year for the next one. This was again a successful edition, and want to thank everyone for making this event possible, especially the Biwug organisation. Here are my slides from this years session: Biwug presenation-spsbe33 from estruyf ## Sorting-not-working-in-the-search-results-web-part-with-predefined-query-sharepoint-2013 - [Sorting Not Working in the Search Results Web Part with Predefined Query in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/sorting-not-working-in-the-search-results-web-part-with-predefined-query-sharepoint-2013/): This week I noticed something strange when configuring a Search Results Web Part with a predefined query. The results were retrieved perfectly, but the sorting configuration was not doing what I defined. The search result web part was configured to get the documents from a specific site and sort them by the creation date. ## Transform-the-sharepoint-suite-bar-text-into-a-breadcrumb-via-powershell - [Transform the “SharePoint” Suite Bar Text into a Breadcrumb with PowerShell · Elio Struyf](https://www.eliostruyf.com/transform-the-sharepoint-suite-bar-text-into-a-breadcrumb-via-powershell/): Where is the breadcrumb in SharePoint 2013? There isn’t one out-of-the-box, but this post helps you to get one back. The out-of-the-box Seattle or Oslo master pages don’t have a breadcrumb located in their HTML markup. That makes navigating from sub-sites to their parent site difficult, if you have not set a good global navigation structure. ## Provisioning-site-columns-and-content-types-via-a-sharepoint-app - [Provisioning Site Columns and Content Types via a SharePoint App · Elio Struyf](https://www.eliostruyf.com/provisioning-site-columns-and-content-types-via-a-sharepoint-app/): Now that sandbox solutions with code behind are deprecated in SharePoint 2013, we need to find new ways to provision content types and site columns to a site. One way to do it is to provision them via a PowerShell script, which is not a bad idea. Another way could be to provision them via a SharePoint app. ## How-to-provision-display-templates-in-sharepoint-2013 - [How to Provision Display Templates in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/how-to-provision-display-templates-in-sharepoint-2013/): Putting HTML design files in the SharePoint Master Page Gallery feels a bit like adding them into a mysterious black box, you don’t know exactly what is going to happen with them. This blog post covers my first experiences with provisioning Display Templates to the Master Page Gallery. The process of provisioning your design files is a bit trial and error when you are not using the design manager. ## Display-the-title-row-top-navigation-in-the-search-centers-of-sharepoint-2013 - [Display the Title Row (Top Navigation) in the Search Centers of SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/display-the-title-row-top-navigation-in-the-search-centers-of-sharepoint-2013/): When working with the new search centers in SharePoint 2013, the first thing that you will notice is that the title row is different compared with for example a standard Team Site. Show image Standard SharePoint 2013 Title Row Show image Search Center Heading - Title Row is Hidden As you can see, the title row (red box) where the top navigation should be, is replaced by the search icon and search box (orange box). ## Hiding-the-social-actions-follow-share-from-the-document-libraries-in-sharepoint-2013 - [Hiding the Social Actions (Follow / Share) from the Document Libraries in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/hiding-the-social-actions-follow-share-from-the-document-libraries-in-sharepoint-2013/): SharePoint 2013 got very social, everything can be tagged, followed, shared. But these new social features require some user adoption, and it could be that your client does not want to have this functionality. This is exactly what a client of us requested, they did not want to have the Follow and Share actions on their site and document libraries. ## How-to-provision-your-design-files-in-sharepoint-2013 - [How to Provision Your Design Files in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/how-to-provision-your-design-files-in-sharepoint-2013/): When upgrading my clients’ page layouts from SharePoint 2010 to 2013, I stumbled on something annoying. The content of my page layouts was not being updated when I deployed a new version of my page layout solution. Everything seemed to be correct, because the file itself was correctly provisioned the first time. ## Sticky-footer-solution-for-sharepoint-2013 - [Sticky Footer Solution for SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/sticky-footer-solution-for-sharepoint-2013/): Footers and SharePoint that was the starting point of this blog. Back in August 2010, I blogged about how to create a sticky footer for your SharePoint 2010 sites (blog post can be found here and here). Now it is time to upgrade this sticky footer solution to SharePoint 2013. ## Search-hover-panel-positioning-bug-in-non-ie-browsers-sharepoint-2013 - [Search Hover Panel Positioning Bug in non IE Browsers (SharePoint 2013) · Elio Struyf](https://www.eliostruyf.com/search-hover-panel-positioning-bug-in-non-ie-browsers-sharepoint-2013/): New SharePoint versions can be challenging, especially when it comes to branding your sites. When you are in a migration process like me, you will probably have to re-do the branding to support the new functionalities. Assuming that everything will work like before can be really disappointing. There are a lot of new functionalities, which means that your design will also need to support these functionalities. ## Adding-custom-search-suggestions-in-sharepoint-2013 - [Adding Custom Search Suggestions in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/adding-custom-search-suggestions-in-sharepoint-2013/): By default search suggestions are enabled on the default search boxes in SharePoint 2013. Show image Search Suggestions Server administrators are still able to manually add search suggestions via PowerShell, but the commands have been changed a little. Check out the following blog post how to do it in SharePoint 2010. ## Branding-the-search-box-in-sharepoint-2013 - [Branding the Search Box in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/branding-the-search-box-in-sharepoint-2013/): Since SharePoint 2013 introduced the display templates, branding elements has been made a lot easier. Like for instance when you want to brand the search box on your site. In the previous versions you mostly started the job by overriding the standard CSS of SharePoint. This approach will still work, but there is now an easier way. ## Replacing-the-ootb-small-search-input-box-for-sharepoint-2013 - [Replacing the OOTB Small Search Input Box in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/replacing-the-ootb-small-search-input-box-for-sharepoint-2013/): This week I started with a branding upgrade project from 2010 to 2013. Throughout this upgrade process I needed to customize the OOTB small search input box (the search box that is shown at the top right of the site). The requirements were the following: Changing the default text (change the “search this site” text); Allow query suggestions (this is enabled by default in 2013); Change the result page address. ## Sub-site-themecomposed-looks-inheritance-how-to - [Sub-Site Theme/Composed Looks Inheritance How To · Elio Struyf](https://www.eliostruyf.com/sub-site-themecomposed-looks-inheritance-how-to/): With the new theme engine from SharePoint 2013 I had a few questions about how sub-sites could inherit the theme/composed looks from the parent. Let me first start with the differences between the 2010 and 2013 theme engine. Differences between SharePoint 2010 and 2013 Theme Engine In 2010 when you uploaded a PowerPoint Theme file to the theme gallery (Site Settings > Themes), it was also available to use on all sub-sites. ## Create-a-task-progress-bar-with-js-link-in-sharepoint-2013 - [Create a “% Complete” Progress Bar with JS Link in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/create-a-task-progress-bar-with-js-link-in-sharepoint-2013/): SharePoint 2013 has a lot new features and functionalities that it can do out-of-the-box. One of these new functionalities is the JS Link web part property. With this property you are able to control the rendering of the web part. This will mostly be used in combination with List View Web Part. ## Build-sharepoint-2013-composite-solutions-all-you-need-is-a-browser-sharepoint-conference-spc12 - [Build SharePoint 2013 composite solutions – all you need is a browser! (SharePoint Conference – SPC12) · Elio Struyf](https://www.eliostruyf.com/build-sharepoint-2013-composite-solutions-all-you-need-is-a-browser-sharepoint-conference-spc12/): The possibilities are limitless when building SharePoint solutions using just the internet browser. The simple and intuitive interface makes it very easy to create robust applications. In this session, you will learn how to use the SharePoint 2013 framework of lists, libraries, pages, web parts and even apps to build powerful SharePoint solutions. ## Migrating-wcm-sites-to-sharepoint-2013-sharepoint-conference-spc12 - [Migrating WCM Sites to SharePoint 2013 (SharePoint Conference – SPC12) · Elio Struyf](https://www.eliostruyf.com/migrating-wcm-sites-to-sharepoint-2013-sharepoint-conference-spc12/): In this session we will discuss upgrade and migration strategies for taking an existing SharePoint 2010 WCM internet site and moving it to SharePoint 2013 – while taking advantage of the new features and capabilities for building web sites. We will demonstrate the common steps needed for migrating a site from 2010 to 2013 and provide a hand on demos for different site migration options. ## Customizing-the-way-sharepoint-2013-looks-sharepoint-conference-spc12 - [Customizing the way SharePoint 2013 looks (SharePoint Conference – SPC12) · Elio Struyf](https://www.eliostruyf.com/customizing-the-way-sharepoint-2013-looks-sharepoint-conference-spc12/): In SharePoint 2013, it’s easier than ever for end-users to make a site feel like it’s their own. But how can developers and IT Pros get involved? Find out in this deep dive into the new & improved SharePoint theming platform where you’ll learn how to integrate with product stylesheets, build your own themes, and make your own themable master pages. ## Customizing-sites-and-pages-in-sharepoint-2013-sharepoint-conference-spc12 - [Customizing Sites and Pages in SharePoint 2013 (SharePoint Conference – SPC12) · Elio Struyf](https://www.eliostruyf.com/customizing-sites-and-pages-in-sharepoint-2013-sharepoint-conference-spc12/): This session will cover an overview of how to customize SharePoint 2013 sites and pages – similar to the activities you would have used SharePoint Designer for with the 2010 platform. These non-workflow or branding activities include conditional formatting, customizing views, etc… If you are a SharePoint 2010 power-user that utilized SharePoint designer for page customization, this session will show you what options are available with 2013. ## Using-jquery-and-display-templates-to-create-modern-web-sites-sharepoint-conference-spc12 - [Using jQuery and Display Templates to create Modern Web Sites (SharePoint Conference – SPC12) · Elio Struyf](https://www.eliostruyf.com/using-jquery-and-display-templates-to-create-modern-web-sites-sharepoint-conference-spc12/): In this session we’ll deep dive on how to use modern web tools like jQuery and CSS3 to build dynamic, search-driven web sites. We’ll show you how to create custom Display Templates that provide modern and interactive experiences to your online users. Ethan Gur-esh, Jeremy Kelley gave this session. Summary Display templates Logical Model of Display Templates Web Part ## Step-by-step-search-development-in-sp2013-sharepoint-conference-spc12 - [Step by Step: Search Development in SP2013 (SharePoint Conference – SPC12) · Elio Struyf](https://www.eliostruyf.com/step-by-step-search-development-in-sp2013-sharepoint-conference-spc12/): Come on a tour of the common development tasks needed to take advantage of the full power of SharePoint 2013 Search. Ingest content from external sources via the BCS. Enhance content prior to indexing via Content Enrichment. Pinpoint relevancy with contextual targeting with Query Rules. Leverage the Search Client Object Model to power search driven applications. ## Creating-your-brand-in-sharepoint-2013-on-premises-or-in-the-cloud-sharepoint-conference-spc12 - [Creating Your Brand in SharePoint 2013 On-Premises or In the Cloud (SharePoint Conference – SPC12) · Elio Struyf](https://www.eliostruyf.com/creating-your-brand-in-sharepoint-2013-on-premises-or-in-the-cloud-sharepoint-conference-spc12/): The process of building, branding and delivering a well-designed web site is more than just skin deep. In this session we will walk you through best practices for planning, creating and deploying engaging web sites with SharePoint 2013 for both on-premises installations as well as SharePoint Online. We will also share best practices around the branding process with lessons learned from real world SharePoint branding projects. ## Step-by-step-building-search-driven-applications-in-sharepoint-2013-sharepoint-conference-spc12 - [Step by Step: Building Search-Driven Applications in SharePoint 2013 (SharePoint Conference – SPC12) · Elio Struyf](https://www.eliostruyf.com/step-by-step-building-search-driven-applications-in-sharepoint-2013-sharepoint-conference-spc12/): Search-driven solutions are applications that use a search engine to drive the data access and results presentation. Simple examples of such applications include image or travel searches in Bing. Microsoft SharePoint 2013 offers developers new ways to extend search to create search-based solutions and Apps. In this session, we will build a Search-driven SharePoint app that allows a law firm to manage proposals, people, offices, and experiences. ## People-search-extensibility-in-sharepoint-2013-sharepoint-conference-spc12 - [People Search & Extensibility in SharePoint 2013 (SharePoint Conference – SPC12) · Elio Struyf](https://www.eliostruyf.com/people-search-extensibility-in-sharepoint-2013-sharepoint-conference-spc12/): Learn about People Search capabilities in SharePoint 2013, and how to leverage external content sources (LOB) to create custom experiences based on user profile properties. Finally, learn how to deliver a user context aware personalized search experience. This session was given by Sana Khan, Mikael Svenson Summary: People are the real value of your organization ## Best-practices-for-designing-websites-with-sharepoint-2013-sharepoint-conference-spc12-liveblog - [Best Practices for Designing Websites with SharePoint 2013 (SharePoint Conference – SPC12) · Elio Struyf](https://www.eliostruyf.com/best-practices-for-designing-websites-with-sharepoint-2013-sharepoint-conference-spc12-liveblog/): A deep dive on new features and capabilities that now allows designers greater flexibility for creating great looking web sites with SharePoint 2013. We will cover the new design manager, support for HTML editing tools, mobile channels, imaged and video renditions, SEO friendly site maps/URL’s and more. This session is given by Alyssa Levitz, Ethan Gur-esh. ## Customizing-search-experiences-in-sharepoint-2013-sharepoint-conference-spc12-liveblog - [Customizing Search Experiences in SharePoint 2013 (SharePoint Conference – SPC12 – Liveblog) · Elio Struyf](https://www.eliostruyf.com/customizing-search-experiences-in-sharepoint-2013-sharepoint-conference-spc12-liveblog/): Learn how to create beautiful search experiences not only in your search centers but also in your portals using the new Content Search Web Part. We will show how Display Templates that use HTML and JavaScript make creating great custom experiences easy. We will also talk about the innovative new search capabilities like Result Types in SharePoint 2013 which allows search to not just understand the query, but adapt the experience to help users find what they are looking for quickly, get answers and take action. ## Introduction-to-the-cloud-app-model-for-sp2013-and-office-part-2-sharepoint-conference-spc12-liveblog - [Introduction to the Cloud App Model for SP2013 and Office: Part 2 (SharePoint Conference – SPC12 – Liveblog) · Elio Struyf](https://www.eliostruyf.com/introduction-to-the-cloud-app-model-for-sp2013-and-office-part-2-sharepoint-conference-spc12-liveblog/): In part 2 of this 2 part series, we will take a deeper dive into apps for Office and SharePoint. This session will focus on authentication scenarios, user experience guidance and general best practices in developing apps for Office and SharePoint. This session will take the apps from Part 1, and enhance them so that they demonstrate the best practices and guidance outlined in this session. ## What-is-new-in-sharepoint-wcm-sharepoint-conference-spc12-liveblog - [What is new in SharePoint WCM (SharePoint Conference – SPC12 – Liveblog) · Elio Struyf](https://www.eliostruyf.com/what-is-new-in-sharepoint-wcm-sharepoint-conference-spc12-liveblog/): This session is about the new features in SharePoint Web Content Management. Info: Contents of this post have not been migrated. ## Developing-apps-sharepoint-conference-spc12-live-blog - [Developing Apps (SharePoint Conference SPC12 – Live Blog) · Elio Struyf](https://www.eliostruyf.com/developing-apps-sharepoint-conference-spc12-live-blog/): This is a live blog of my first day at the pre-conference training: Start Building Apps for Office and SharePoint Today. Session is given by Kirk Evans. Info: Contents of this post have not been migrated. ## Quick-tip-adding-an-active-directory-group-through-the-permissions-web-service - [Quick Tip: Adding an Active Directory Group Through the Permissions Web Service · Elio Struyf](https://www.eliostruyf.com/quick-tip-adding-an-active-directory-group-through-the-permissions-web-service/): When working with the addpermission method from the permissions.asmx web service, you have the possibility to add permissions to a list or site for users or groups. When you specify a group as permissionType, you could only specify a SharePoint group that exists on the site. You are not able to specify an Active Directory group, but that does not mean that it is not possible. ## How-to-create-a-master-page-that-is-available-for-the-composed-looks - [How to Create a Master Page that is Available for the Composed Looks · Elio Struyf](https://www.eliostruyf.com/how-to-create-a-master-page-that-is-available-for-the-composed-looks/): In this post I will show you how you can create a new master page that can be selected in the Site Layouts menu when you are changing the look of your site (Site Settings > Change the look). One part that I did not cover yet, is the Site Layouts option in the Composed Looks (Site Settings > Change the look > Select a composed look) and how you can add other layouts to it. ## Creating-a-new-font-scheme-for-sharepoint-2013-composed-look - [Creating a New Font Scheme for SharePoint 2013 Composed Look · Elio Struyf](https://www.eliostruyf.com/creating-a-new-font-scheme-for-sharepoint-2013-composed-look/): In my previous post I described how you could create a new color palette for SharePoint 2013. In this post I will describe how you could easily change the font scheme of your website by creating your own font scheme file. The first thing you need to do is download an existing font scheme from the theme gallery (Site Settings > Themes). ## Creating-a-new-color-palette-for-a-sharepoint-2013-composed-look - [Creating a New Color Palette for a SharePoint 2013 Composed Look · Elio Struyf](https://www.eliostruyf.com/creating-a-new-color-palette-for-a-sharepoint-2013-composed-look/): One of the new functionalities in SharePoint 2013 is that themes are split up in multiple files. Color Palette files; Font Scheme files. When you want to create a new color palette in SharePoint 2013, you can start by going to Site Settings > Themes. In the theme gallery click on a color palette (ex. ## Themes-and-composed-looks-in-sharepoint-2013 - [Themes and Composed Looks in SharePoint 2013 · Elio Struyf](https://www.eliostruyf.com/themes-and-composed-looks-in-sharepoint-2013/): A lot has been changed in the new version of SharePoint when working with SharePoint themes. One of the biggest changes is that it no longer works with Office themes. In SharePoint 2013 they split up all the design elements, which makes it more powerful than in the previous versions. Right now you have two different things: ## Making-an-image-gallery-from-the-asset-library-part-2 - [Making an Image Gallery from the Asset Library: Part 2 · Elio Struyf](https://www.eliostruyf.com/making-an-image-gallery-from-the-asset-library-part-2/): In the previous part I showed you how to manipulate the Asset Library Thumbnail view, so that it could be used as image gallery. In this part I will do a small update to the code, so that the first image will be used for the gallery. Adding gallery images In the first part I created a gallery section which looked like this: ## Making-an-image-gallery-inside-the-asset-library-part-1 - [Making an Image Gallery Inside the Asset Library: Part 1 · Elio Struyf](https://www.eliostruyf.com/making-an-image-gallery-inside-the-asset-library-part-1/): Recently I was at a client that wanted to have something more useable for storing and showing their event pictures. The only thing that is possible out-of-the-box in SharePoint 2010 is working with a slideshow web part and the old picture library. That gave me the idea to implement a jQuery image gallery into the Asset Library. ## Make-the-office-365-p1-plan-footer-stick-to-the-bottom-of-the-page - [Make the Office 365 P1 Plan Footer Stick to the Bottom of the Page · Elio Struyf](https://www.eliostruyf.com/make-the-office-365-p1-plan-footer-stick-to-the-bottom-of-the-page/): People that are using the Office 365 P1 Plan they probably already noticed that the footer does not stick at the bottom of the page. But I do not like the empty white space at the bottom, so I thought to fill it up and make the footer stick to the bottom of the page. ## Do-not-remove-the-horizontal-ruler-in-a-discussion-board-reply - [Do Not Remove the Horizontal Ruler in a Discussion Board Reply · Elio Struyf](https://www.eliostruyf.com/do-not-remove-the-horizontal-ruler-in-a-discussion-board-reply/): This week a customer informed me that they were experiencing some problems with a web part someone developed. The web part showed the latest discussion board messages, but suddenly they received an error from the web part. In the beginning we thought that it all had to do with special characters. ## Creating-a-twitter-data-view-web-part-spsbe-part-3 - [Creating a Twitter Data View Web Part: SPSBE Part 3 · Elio Struyf](https://www.eliostruyf.com/creating-a-twitter-data-view-web-part-spsbe-part-3/): The last XSLT demo I gave on SharePoint Saturday Belgium was about creating a Twitter web part by using a data view web part. Step 1 First of all you need to retrieve the Twitter search results as RSS feed. This can be done by navigating to the following URL: http://search. ## Using-xslt-statements-spsbe-part-2 - [Using XSLT Statements: SPSBE Part 2 · Elio Struyf](https://www.eliostruyf.com/using-xslt-statements-spsbe-part-2/): This post explains the second demo that I showed at my SharePoint Saturday Belgium presentation. The second demo was about XSLT statements. XSLT statements are used to put a conditional test against the data source you are using. For example: If my value is equal to “deferred” than show or do this. ## Selecting-data-with-xslt-spsbe-part-1 - [Selecting Data With XSLT: SPSBE Part 1 · Elio Struyf](https://www.eliostruyf.com/selecting-data-with-xslt-spsbe-part-1/): On the SharePoint Saturday Belgium I gave an introduction presentation about XSLT (Slides). In the following blog post series, consisting of three parts, I will step by step explain my given demos. Selecting Data With XSLT The first demo that I gave was about selecting data with XSLT. The best way to start with this is to create an empty web part page and use a Data View Web Part. ## Discussion-board-style-for-the-content-query-web-part - [Discussion Board Style for the Content Query Web Part · Elio Struyf](https://www.eliostruyf.com/discussion-board-style-for-the-content-query-web-part/): When you want to create a rollup from all discussion board (or a specific one) in SharePoint, you will notice that the Content Query Web Part does not have an appropriate style for it. Every out of the box style from the Content Query Web Part returns the following result. ## Adding-properties-to-timer-jobs - [Adding Properties to Timer Jobs · Elio Struyf](https://www.eliostruyf.com/adding-properties-to-timer-jobs/): Adding properties to timer jobs could be handy if you want to set the reference to a particular site collection, or if you want to set some parameters that are needed to run the job. You could add these properties just like you would add properties to a SharePoint site. ## Take-your-sharepoint-social-features-to-the-next-level-with-i-like-it-and-tags-counters-part-4-2 - [Take your SharePoint social features to the next level with “I like it” and “Tags” counters: Part 4 · Elio Struyf](https://www.eliostruyf.com/take-your-sharepoint-social-features-to-the-next-level-with-i-like-it-and-tags-counters-part-4-2/): My intention was to write three blog posts on this topic, but a commenter told me that a problem arises with blog post items. The counters always return zero. In this part I will show you why this is happening and what you could do to solve this. Show image Blog with social features First of all the reason why it is happening. ## Take-your-sharepoint-social-features-to-the-next-level-with-i-like-it-and-tags-counters-part-3 - [Take your SharePoint social features to the next level with “I like it” and “Tags” counters: Part 3 · Elio Struyf](https://www.eliostruyf.com/take-your-sharepoint-social-features-to-the-next-level-with-i-like-it-and-tags-counters-part-3/): In the previous parts I showed you how to retrieve all tags for a specific page/item. In this part (the last one) I will show you how you can integrate these tags into your design. This will be the final result: Show image Social Tags Results User Control You have various possibilities to show these tag results on your page. ## Take-your-sharepoint-social-features-to-the-next-level-with-i-like-it-and-tags-counters-part-2 - [Take your SharePoint social features to the next level with “I like it” and “Tags” counters: Part 2 · Elio Struyf](https://www.eliostruyf.com/take-your-sharepoint-social-features-to-the-next-level-with-i-like-it-and-tags-counters-part-2/): In the previous part I talked about retrieving the number of tags by code. The problem was that the **GetTags **method from the SocialTagManager class, could only retrieve tags from a specific user. In this part I show you a way to retrieve the all the tags for a specific location/page. ## Take-your-sharepoint-social-features-to-the-next-level-with-i-like-it-and-tags-counters-part-1 - [Take your SharePoint social features to the next level with “I like it” and “Tags” counters: Part 1 · Elio Struyf](https://www.eliostruyf.com/take-your-sharepoint-social-features-to-the-next-level-with-i-like-it-and-tags-counters-part-1/): Social media is a trending topic these days, more and more companies start to use it. As you may know, SharePoint 2010 also got social features like for example: tagging, I like it, social comments, etc. But these social features are nothing compared to the social features like Facebook. When somebody “likes” a page or “tags” a page, it is not displayed to the other users. ## Data-view-web-part-create-a-google-chart-with-xslt - [Data View Web Part: Create a Google Chart With XSLT · Elio Struyf](https://www.eliostruyf.com/data-view-web-part-create-a-google-chart-with-xslt/): In this post I will explain how you could create a Google Pie Chart with the use of XSLT. The data that I am going to visualize are the tasks statuses, so that you get an overview of all the tasks. The pie chart that will be used is the following: Pie Chart. ## Fix-open-in-new-tab-not-available-in-the-right-click-menu-of-internet-explorer - [Fix: Open in New Tab not Available in the Right-Click menu of Internet Explorer · Elio Struyf](https://www.eliostruyf.com/fix-open-in-new-tab-not-available-in-the-right-click-menu-of-internet-explorer/): This week a client made me aware that links in the top navigation and in the quick launch (from SharePoint 2010) cannot be opened in a new tab from the Right-Click menu of Internet Explorer. If you try to do it, the option is not available. Show image Right-Click menu If you do it on a regular link, you should get the following Right-Click menu. ## Order-list-items-like-in-a-meeting-workspace-part-3 - [Order List Items Like in a Meeting Workspace: Part 3 · Elio Struyf](https://www.eliostruyf.com/order-list-items-like-in-a-meeting-workspace-part-3/): In the previous parts I told you how you could enable the reorder functionality and create a custom reorder action in the ribbon. In this blog post I will cover how you could open the reorder page in a SharePoint dialog window. Everywhere in SharePoint you got dialog windows. So it would be much cleaner to modify the custom action to also use a dialog box. ## Order-list-items-like-in-a-meeting-workspace-part-2 - [Order List Items Like in a Meeting Workspace: Part 2 · Elio Struyf](https://www.eliostruyf.com/order-list-items-like-in-a-meeting-workspace-part-2/): In Order List Items Like in a Meeting Workspace: Part 1 I wrote how you could enable the order field on other lists. In this blog post I will cover how you could create a custom action to reorder the list items. Add a Custom Reorder Action to the List Open your site in SharePoint Designer 2010; Navigate to your list settings page in SharePoint Designer; Show image List Settings in SharePoint Designer Under the List Settings tab, click Custom Action -> View Ribbon; Show image Custom Action - View Ribbon In the Name textbox, fill in: Change Item Order; Select Navigate to URL under the action type, and fill in the following URL value: ~site/_layouts/Reorder. ## Order-list-items-like-in-a-meeting-workspace-part-1 - [Order List Items Like in a Meeting Workspace: Part 1 · Elio Struyf](https://www.eliostruyf.com/order-list-items-like-in-a-meeting-workspace-part-1/): As you may or may not know, there is functionality in the Meeting Workspaces to reorder the discussion points on the agenda. This functionality enables you to change the order of the discussion points, but you can also enable this functionality on other lists. It requires some manual steps which are explained in this blog post. ## Multilingual-user-interface-in-page-layouts-and-master-pages - [Multilingual User Interface in Page Layouts and Master Pages · Elio Struyf](https://www.eliostruyf.com/multilingual-user-interface-in-page-layouts-and-master-pages/): On the 30th of November I went the Biwug sessions about SharePoint 2010 Multilingual User Interface. It were very interesting sessions that gave a good overview of variations, language packs, resource files, … Based on what I heard in this sessions, I wanted to make a small addition related to the branding process and MUI. ## Deploying-branding-files-using-a-sandbox-solution - [Deploying Branding Files Using a Sandbox Solution · Elio Struyf](https://www.eliostruyf.com/deploying-branding-files-using-a-sandbox-solution/): When you want to create a SharePoint 2010 sandbox branding solution, you will notice that your files will be in draft (Checked out). This means that these files are not available yet for all users. Therefore two actions need to be done for each file: Check in the file; Approve the file. ## Use-fiddler-in-combination-with-sharepoint-designer-to-retrieve-data-source-information - [Use Fiddler In Combination With SharePoint Designer to Retrieve Data Source Information · Elio Struyf](https://www.eliostruyf.com/use-fiddler-in-combination-with-sharepoint-designer-to-retrieve-data-source-information/): SharePoint Designer is a handy application when you want to do quick modifications to your site. Like for example creating a data view web part. When you are working with XSLT and want to create your own templates, it is useful to know the returned SOAP message (XML output). This is something SharePoint Designer does not provide. ## Create-a-new-document-using-office-web-apps - [Create a New Document Using Office Web Apps · Elio Struyf](https://www.eliostruyf.com/create-a-new-document-using-office-web-apps/): A few days ago I moved one of my personal domains to Office 365. One of the things I noticed is that you can create new documents without the need of a client application, everything is done by the Office Web Apps. Show image Create documents This is only possible from the Home page of Office 365. ## Group-items-on-their-folder-name-inside-a-sharepoint-library - [Group Items on Their Folder Name Inside a SharePoint Library · Elio Struyf](https://www.eliostruyf.com/group-items-on-their-folder-name-inside-a-sharepoint-library/): Some time ago a client asked me if you could create a view where all the documents are grouped on the folder name. The folders were used to set the permissions on documents, so they could not be removed. As you probably will know, folders could not be used in views to group documents. ## Add-the-my-links-functionality-as-in-sharepoint-2007-to-your-2010-site - [Re-add the My Links Functionality as in SharePoint 2007 to Your 2010 Site · Elio Struyf](https://www.eliostruyf.com/add-the-my-links-functionality-as-in-sharepoint-2007-to-your-2010-site/): Clients that migrate from SharePoint 2007 to SharePoint 2010 may miss the old My Links functionality in their “new” environment. In SharePoint 2007, you had the option to add sites to your My Site by clicking on a link in the User Context Menu. Show image My Links Functionality in SharePoint 2007 In SharePoint 2010 this option is not there anymore. ## Layout-difference-between-a-dutch-and-an-english-sharepoint-site - [Layout Difference Between a Dutch and an English SharePoint Site · Elio Struyf](https://www.eliostruyf.com/layout-difference-between-a-dutch-and-an-english-sharepoint-site/): Yesterday I worked on a Dutch SharePoint 2010 site, and noticed a layout difference between a Dutch (1043) and an English (1033) site. Show image Height difference between a Dutch and an English site. As you can see there is a height difference (s4-titlerow) between the two sites. I examined the CSS to see which attributes were causing this height difference. ## Sharepoint-designer-2010-start-approval-process-workflow-action-not-working-in-other-languages - [SharePoint Designer 2010 – Start Approval Process Workflow Action Not Working In Other Languages · Elio Struyf](https://www.eliostruyf.com/sharepoint-designer-2010-start-approval-process-workflow-action-not-working-in-other-languages/): Problem When designing a SharePoint Designer workflow for a Dutch site, an error occurred when I used a language specific **Start Approval Process **action. The error only tells you that the workflow will not work: “Errors in the workflow prevent it from functioning correctly”. It only highlights the Approval Process in red. ## Fix-search-box-suggestions-layout-problem-when-used-outside-a-search-center - [Fix: Search Box Suggestions Layout Problem When Used Outside a Search Center · Elio Struyf](https://www.eliostruyf.com/fix-search-box-suggestions-layout-problem-when-used-outside-a-search-center/): Some time ago, I wrote about a layout problem when using the People Search Box Web Part outside a SharePoint Search Center. Other layout problems occurs when you enable Query Suggestions for the Search Box Web Part. Show image Query Suggestions What I experienced is that two different layout problems occur: ## User-cannot-be-found-when-opening-listlibrary-settings - [User Cannot be Found When Opening List/Library Settings or Workflow Settings · Elio Struyf](https://www.eliostruyf.com/user-cannot-be-found-when-opening-listlibrary-settings/): Since a couple of months I have encountered the User cannot be found error a few times when accessing the List Settings or Library Settings. Show image User cannot be found In my case I encountered this error in the following scenarios: After switching the web application to Claims-based authentication; After migrating some sites to another SharePoint farm. ## Backing-up-your-sharepoint-farm-to-a-location-in-another-ad-forest-without-ad-trusts - [Backing Up Your SharePoint Farm to a Location in Another AD Forest Without AD Trusts · Elio Struyf](https://www.eliostruyf.com/backing-up-your-sharepoint-farm-to-a-location-in-another-ad-forest-without-ad-trusts/): In the years that I work with SharePoint, I have made several farm backups. Usually I can make use of a backup location in the same Active Directory forest as that from the SharePoint server. For a few times the backup location was located in another Active Directory forest where there was a trust between the Active Directory forests. ## List-of-all-font-family-and-font-size-used-in-sharepoint-2010-stylesheets - [List Of All font-family and font-size Attributes Used in SharePoint 2010 StyleSheets · Elio Struyf](https://www.eliostruyf.com/list-of-all-font-family-and-font-size-used-in-sharepoint-2010-stylesheets/): These days I get a lot of questions to change the font-family or font-size of a SharePoint 2010 site. As many of you will know you can easily change the font-family in the theme settings, but it will not be applied to all the elements. The same count for changing the font sizes in SharePoint 2010. ## How-to-display-the-site-title-and-site-url-in-search-results - [How to Display the Site Title and Site URL in Search Results · Elio Struyf](https://www.eliostruyf.com/how-to-display-the-site-title-and-site-url-in-search-results/): Recently I was restyling the search results, and one of the expectations was to display a hyperlink to the site of origin of the result. Adding the site title of the returned results is very easy, this can be retrieved from the metadata property “SiteTitle”. The web URL is a bit more difficult. ## Quick-tip-vsto-retrieve-the-sharepoint-file-location - [Quick Tip: VSTO Retrieve The SharePoint File Location · Elio Struyf](https://www.eliostruyf.com/quick-tip-vsto-retrieve-the-sharepoint-file-location/): Visual Studio Tools for Office (VSTO) can be used to develop add-ins (and more) for an Office application. In combination with the SharePoint Client Object Model, it could be used to retrieve additional information from a SharePoint site were the file is located. You always need to specify a site URL when using the SharePoint Client Object Model. ## Bug-with-sharepoint-2010-xslt-dateformat-function - [Bug With SharePoint 2010 XSLT DateFormat Function · Elio Struyf](https://www.eliostruyf.com/bug-with-sharepoint-2010-xslt-dateformat-function/): Yesterday I found out that there is a problem/bug using the XSLT ddwrt:DateFormat function. The problem/bug occurs when the regional settings is not set to English (United States). When a day got the value between 1 and 12, the ddwrt:DateFormat function will recognize this as the month. The month value will be used as the day. ## Downgrade-a-sharepoint-2010-visual-web-part-to-sharepoint-2007 - [Downgrade a SharePoint 2010 Visual Web Part to SharePoint 2007 · Elio Struyf](https://www.eliostruyf.com/downgrade-a-sharepoint-2010-visual-web-part-to-sharepoint-2007/): When you need to downgrade/convert a SharePoint 2010 Visual Web Part to SharePoint 2007, you need to make the following changes to the user control to make it work for SharePoint 2007: In the Visual Web Parts User Control remove the following line: 1 <%@ Assembly Name="Microsoft.Web.CommandUI, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> Change the version number of the following lines from 14. ## Change-the-active-directory-user-password-through-sharepoint - [Change the Active Directory User Password Through SharePoint · Elio Struyf](https://www.eliostruyf.com/change-the-active-directory-user-password-through-sharepoint/): Give the user control to manage their password through SharePoint. When you want to use form based authentication for SharePoint authentication, one of the requirements could be that users can change their passwords from within SharePoint. Because this functionality is not OOTB available, you will need to create a custom web part or application page for it. ## Fix-people-search-box-has-layout-problems-when-used-outside-a-search-center - [Fix: People Search Box Has Layout Problems When Used Outside a Search Center · Elio Struyf](https://www.eliostruyf.com/fix-people-search-box-has-layout-problems-when-used-outside-a-search-center/): A colleague discovered a layout problem when he was using the People Search Box Web Part outside a SharePoint Search Center. When you add the People Search Box Web Part to your page, the layout looks fine. Show image People Search Box The problem arises when you click on the Search Options link. ## Quick-tip-custom-action-tokens-in-sharepoint-2010-designer - [Quick Tip: Custom Action Tokens in SharePoint 2010 Designer · Elio Struyf](https://www.eliostruyf.com/quick-tip-custom-action-tokens-in-sharepoint-2010-designer/): SharePoint 2010 Designer allows you to create custom actions for the SharePoint ribbon or the item context menu. Show image Custom Actions in SharePoint Designer These custom actions can be used to start a workflow, navigate to a form, and navigate to a custom URL. Show image Action Types For the last option you can make use of “Tokens”. ## Programmatically-setting-the-fetched-properties-to-an-extended-search-core-result-web-part - [Programmatically Setting the Fetched Properties to an Extended Search Core Result Web Part · Elio Struyf](https://www.eliostruyf.com/programmatically-setting-the-fetched-properties-to-an-extended-search-core-result-web-part/): This week I needed to extend the search core result web part to be able to do some custom filtering and search result styling. For the search result styling, additional fetched properties (columns) needed to be added programmatically to the Web Part properties. But every time I checked in the web part properties, these fetched properties were not added, and I end up with the default fetched properties. ## Creating-a-nuget-package-to-automate-the-sharepoint-solution-creation-process - [Creating a NuGet Package to Automate the SharePoint Solution Creation Process. · Elio Struyf](https://www.eliostruyf.com/creating-a-nuget-package-to-automate-the-sharepoint-solution-creation-process/): In this blog post I will talk about how to automate the SharePoint solution creation process by making use of NuGet. As an example I will use NuGet to automate the SharePoint Branding process in Visual Studio. NuGet is a package management system for your develop environment. NuGet makes the process of importing . ## Quick-tip-converting-sharepoint-2010-application-page-to-sharepoint-2007 - [Quick Tip: Converting SharePoint 2010 Application Page to SharePoint 2007 · Elio Struyf](https://www.eliostruyf.com/quick-tip-converting-sharepoint-2010-application-page-to-sharepoint-2007/): When you need to convert an application page from SharePoint 2010 to SharePoint 2007, these are the steps that need to be done: Change the “SharePoint.WebControls” and the “SharePoint.Utilities” assemblies version numbers from “14.0.0.0” to “12.0.0.0”; Remove the “Microsoft.Web.CommandUI” assembly line: Show image Assembly Reference to be removed Change the “DynamicMasterPageFile” attribute name to “MasterPageFile”, and replace the value with the following: Show image MasterPageFile Attribute The result should be something like this: ## Sandboxed-to-do-list-web-part-on-office-365-sharepoint-online - [Sandboxed To-Do List Web Part on Office 365 – SharePoint Online · Elio Struyf](https://www.eliostruyf.com/sandboxed-to-do-list-web-part-on-office-365-sharepoint-online/): Today I received my Office 365 account, so I thought it would be cool to check out if my sandbox web part, that I have created some time ago, is working on SharePoint Online. Here is the link to the original blog post: Creating a Sandboxed Visual Web Part from the To-do List ## Pinning-sharepoint-2010-sites-with-ie9 - [Pinning SharePoint 2010 Sites With IE9 · Elio Struyf](https://www.eliostruyf.com/pinning-sharepoint-2010-sites-with-ie9/): Thanks to Katrien De Graeve for giving me the inspiration of this blog post. Last week on the HTML5 Web Camp session in Belgium, she talked about the site pinning functionality of IE9. She also recommended a jQuery plugin called ie9ify that makes site pinning integration much easier. The day after the session I started experimenting with the ie9ify plugin, and it was working as suspected. ## Quiescing-a-sharepoint-2010-farm-as-in-sharepoint-2007 - [Quiescing a SharePoint 2010 Farm as in SharePoint 2007 · Elio Struyf](https://www.eliostruyf.com/quiescing-a-sharepoint-2010-farm-as-in-sharepoint-2007/): In SharePoint 2007 you had the ability to quiesce the farm inside central administration. This ability is not implemented in SharePoint 2010, you need to use the STSADM command to achieve this. 1 stsadm -o quiescefarm -maxduration minutes But, I have done some research and development to achieve the same as in SharePoint 2007. ## Developing-a-sharepoint-2010-designer-workflow-action-to-retrieve-the-file-extension - [SharePoint Designer Workflow Action: Retrieve the File Extension · Elio Struyf](https://www.eliostruyf.com/developing-a-sharepoint-2010-designer-workflow-action-to-retrieve-the-file-extension/): This week I was a experimenting with creating SharePoint Designer workflows. After some time I noticed that it was not possible to retrieve the file extension in a SPD Reusable Workflow. Because this is a very useful action, I am going to explain it in this blog post on how to create a SharePoint 2010 Designer Workflow Action. ## Creating-a-sandboxed-visual-web-part-from-the-to-do-list - [Creating a Sandboxed Visual Web Part from the To-do List · Elio Struyf](https://www.eliostruyf.com/creating-a-sandboxed-visual-web-part-from-the-to-do-list/): In my previous blog post I showed you how to create a to-do list with ECMAscript, the only problem is that you need to append the HTML and JavaScript code to a Content Editor Web Part. This isn’t very flexible and therefore I made this blog post. The purpose of this post is to show you how to add this code to a Sandboxed Visual Web Part. ## Creating-a-to-do-list-with-ecmascript - [Creating a To-do List with ECMAscript · Elio Struyf](https://www.eliostruyf.com/creating-a-to-do-list-with-ecmascript/): In one of my previous post I created a task manager with ECMAscript. In this post I will go a step further and create a to-do list. This to-do list that enables you to add new items, delete items and mark them as completed. Show image To-do list final result Download the solution package ## Adding-a-subsites-navigation-level-under-the-global-navigation-row - [Adding a Subsites Navigation Level Under the Global Navigation Row · Elio Struyf](https://www.eliostruyf.com/adding-a-subsites-navigation-level-under-the-global-navigation-row/): Normally subsites are displayed in a dropdown menu when the site collection publishing feature is activated. Show image Subsite navigation dropdown In this post I will show you how to display these subsites on their own navigation row. The end result is shown in the picture below. Show image Final result Hide the subsites dropdown menu First you need to hide the subsites dropdown menu from the global navigation. ## Fix-v4-master-recurring-meeting-workspace-error-g_instanceid-is-undefined - [Fix: V4.master Recurring Meeting Workspace Error: ‘g_InstanceID’ is Undefined · Elio Struyf](https://www.eliostruyf.com/fix-v4-master-recurring-meeting-workspace-error-g_instanceid-is-undefined/): In SharePoint 2007 a problem with JavaScript occurred when you used a recurring meeting workspace. When you clicked on the hyperlinks under “Select a date from the list below” a JavaScript error was thrown. Michmon found a solution for this problem and he made a blog post on MSDN about it. ## Problem-with-list-views-that-exceeds-browser-window-width - [Problem With List Views That Exceeds Browser Window Width · Elio Struyf](https://www.eliostruyf.com/problem-with-list-views-that-exceeds-browser-window-width/): Last week a customer indicated that layout problems could arise with list views. The problem arises when the amount of data/columns that is visible, exceeds the browser width. This creates an empty space next to the title row when the user scrolls horizontally. Show image This problem occurs when loading the page, the JavaScript of SharePoint sets the browser window width to the title row element. ## Task-status-manager-with-ecmascript-and-jquery-ui - [Task Status Manager With ECMAscript and jQuery UI · Elio Struyf](https://www.eliostruyf.com/task-status-manager-with-ecmascript-and-jquery-ui/): What if you could manage your task statuses by just a drag and drop action? Wouldn’t that be cool? This was the idea that a colleague and I had last week. Concept For this concept I am only going to use the following task statuses: Not Started In Progress Completed To visualise the task items, I have created three task status blocks. ## Visualise-sp2010-rest-data-with-google-visualization-api - [Visualise SP2010 Rest Data With Google Visualization API · Elio Struyf](https://www.eliostruyf.com/visualise-sp2010-rest-data-with-google-visualization-api/): Some time ago I was testing out the Google Visualization API with SharePoint 2010 Rest functionality. The Google Visualization API is very handy if you want to visualize your data. My intention was to create a pie chart to visualise the task statuses. The data was consumed from the SharePoint 2010 REST service with the help of jQuery. ## Minimal-master-with-footer - [Minimal.master with footer · Elio Struyf](https://www.eliostruyf.com/minimal-master-with-footer/): This blog post is created by a request of a commenter named Gane. He asked me how to add a footer section to the “minimal.master” master page. This master page is used for the search centers in SharePoint 2010. My previous solution for adding a footer to a master page, were based on the “v4. ## Sharepoint-2007-create-permissions-on-list-views - [SharePoint: Create permissions on list views · Elio Struyf](https://www.eliostruyf.com/sharepoint-2007-create-permissions-on-list-views/): First of all I’ve tried the same approach for SharePoint 2010 and this works the same way. One of the things I miss the most in SharePoint 2007 is to set permissions on list views. I thought it was impossible to achieve this with the out-of-the-box functionality of SharePoint. After some research I found a way to achieve all this. My goal was to do it without writing or modifying any code in SharePoint. The solution consists of a number of manual steps, that I will describe in detail below, to accomplish this. ## Moving-the-searchbox-into-the-top-ribbon - [Moving The Searchbox Into The Top Ribbon v4.master · Elio Struyf](https://www.eliostruyf.com/moving-the-searchbox-into-the-top-ribbon/): I have seen that some people have difficulties with moving the searchbox position to the top ribbon in SharePoint 2010 v4.master file. Two months ago I did this for a client to have more space for all the subsites. Here is what I have done to let it work in IE 7 - 8 and Firefox. ## V4-master-with-sticky-footer-and-docked-ribbon - [V4.master Sticky Footer With Docked Ribbon · Elio Struyf](https://www.eliostruyf.com/v4-master-with-sticky-footer-and-docked-ribbon/): After getting the footer working in the undocked version, I have tried to get it to work with a docked ribbon. The problem is that SharePoint’s Javascript will automatically calculate the exact size of the div “s4-workspace” each time you click on the ribbon or a webpart. This will push the footer off the screen or the bottom from the scrollbar falls of the screen. ## V4-master-sticky-footer-with-undocked-ribbon - [V4.master Sticky Footer With Undocked Ribbon · Elio Struyf](https://www.eliostruyf.com/v4-master-sticky-footer-with-undocked-ribbon/): Hi, This is actually my first blog post and it’s about my first real frustration and moment of joy with SharePoint 2010. This week I wanted to insert a “sticky” footer to my masterpage (v4.master). For two days I have tried to get it working on Internet Explorer and Firefox, but for some reasons it always came out as a disappointment.